轉(zhuǎn)眼間,一年一度的圣誕節(jié)又來臨了。在這個越來越受到國人重視的節(jié)日中,每個人有每個人的浪漫方式,當(dāng)然程序員們也不例外。
下面就來看看一些IT企業(yè)和程序員們是如何為這個節(jié)日增添不一樣的氣氛的。
一、來自IT巨頭的問候
1. Google的彩蛋
每到節(jié)日,Google就會在其搜索引擎中加入一些彩蛋,在用戶搜索特定關(guān)鍵詞的時候出現(xiàn)特殊的頁面效果。臨近圣誕,當(dāng)用戶在Google中輸入“圣誕節(jié)”時,會頁面上端出現(xiàn)飄雪的場景和圣誕老人駕駛鹿車飛馳的畫面。
2. 百度的小游戲
當(dāng)用戶在百度中搜索“圣誕節(jié)”時,就會出現(xiàn)一個小游戲。該游戲基于HTML5制作。
詳細(xì)信息可查看這個頁面的源碼。http://www.baidu.com/ur/show/uhchristmas?from=christmasresult
3. 微軟追蹤圣誕老人網(wǎng)站
微軟今年推出了一個追蹤圣誕老人的網(wǎng)站,該主題網(wǎng)站基于HTML5和WebGL技術(shù),首頁有圣誕節(jié)的倒計時,此外還有許多好玩的在線游戲,最主要的是該網(wǎng)站在觸摸設(shè)備上也有很好的體驗。
網(wǎng)站地址:http://www.noradsanta.org/
二、來自初級程序員的問候
如果你剛開始學(xué)習(xí)HTML5,你可以制作一些簡單的效果來慶祝圣誕節(jié)。
1.使用canvas功能繪制的簡單圣誕樹
在繪圖板中繪制下面這個圖形并不算什么難事,但是使用代碼來生成這個圣誕樹卻需要一定的HTML5基礎(chǔ)。
下面這個圖形使用HTML5中的<canvas>標(biāo)簽來繪制,如果你熟悉HTML5,這對你來說輕而易舉。
源碼:http://www.spjeff.com/2013/12/05/christmas-tree-html5-js-and-css3/
2.雪花效果
jQuery的出現(xiàn),讓各種動畫效果變得更加容易。比如,你可以通過jQuery、jQuery.snow.js插件以及少量的代碼,就可以讓頁面中飄舞這雪花。
源碼:https://github.com/tzach/merry-christmas
3. 一個非常漂亮的圣誕賀卡
該賀卡通過Construct2制作,然后通過c2runtime.js使得該賀卡可以直接在網(wǎng)頁中運行。Construct2是一款用來制作HTML5應(yīng)用的軟件,擁有一個清晰直觀、支持“拖拽”操作的開發(fā)環(huán)境,即使你沒有任何編程經(jīng)驗也能開發(fā)自己的HTML5應(yīng)用。
演示:http://3.s3.envato.com/files/72733144/blue/index.html
三、來自中級程序員的問候
隨著編程技能的進一步掌握,你可以使用稍復(fù)雜的技術(shù)來實現(xiàn)一些更絢麗的效果。
1. CSS3實現(xiàn)圣誕樹動畫
該動畫主要使用CSS3實現(xiàn)各種轉(zhuǎn)場效果,并使用了HTML5中的<audio>標(biāo)簽來播放音頻文件。同時還使用了StyleFix和PrefixFree腳本,這樣在編寫代碼時可以不用為特定的CSS3屬性添加瀏覽器前綴,也可以在其他瀏覽器中播放。
演示:http://christmasexperiments.com/2013/11/experiment.html
源碼:https://github.com/podrivo/christmas
2.HTML表單元素制作的圣誕樹
下面這個圣誕樹沒有采用松樹的形式,而是采用了HTML表單元素來制作,比如輸入框、單選鈕,進度條,按鈕等。
演示:http://hakim.se/experiments/css/domtree/
源碼:https://github.com/hakimel/DOM-Tree
3.使用tree.js庫創(chuàng)建圣誕樹
three.js是一款開源的JavaScript 3D框架,也可以說是一款WebGL框架,幾乎可以實現(xiàn)所有的3D場景。本文所提到的圣誕樹就是用three.js和HTML5技術(shù)實現(xiàn)的。
演示:http://www.script-tutorials.com/demos/372/index.html
源碼:http://www.script-tutorials.com/christmas-tree-with-threejs/
three.js托管地址:https://github.com/mrdoob/three.js/
4. 3D雪花效果
該效果使用HTML5的<canvas>標(biāo)簽和three.js實現(xiàn)了3D的雪花飛舞效果。你可以拖動鼠標(biāo)進行旋轉(zhuǎn)。
演示:http://seb.ly/demos/JSSnowNew/snow3d.html
源碼:https://github.com/sebleedelisle/live-coding-presentations/tree/master/2011/JSSnow
四、來自高級程序員的問候
1. 代碼不到1KB的3D圣誕樹
下面這個3D圣誕樹只用1021字節(jié)的JavaScript代碼編寫而成,逼真的3D及旋轉(zhuǎn)效果,將JavaScript功能發(fā)揮到了極致。
演示:http://js1k.com/2010-xmas/demo/856
源碼如下:
2. 代碼不到1KB的雪景效果
下面這個場景也是由不到1KB的JavaScript代碼生成。
演示:http://js1k.com/2010-xmas/demo/855
源碼如下:
此外還有很多1KB代碼編寫的圣誕效果,大家可以訪問js1k圣誕主題頁面。
3. 游戲般的3D雪地場景
整個Demo是基于一個無限開闊的雪地場景的,里面有圣誕樹和雪人,可以像玩FPS游戲一樣在里面走動,WASD操控移動,按住鼠標(biāo)左鍵拖拽控制方向,整個Demo是使用Oak3D框架制作的。
演示地址:http://christmas.oak3d.com/Scene/MerryChristmas.html
五、自己動手
看完上面的這些效果,你是不是也想自己動手做一個屬于自己的圣誕禮物呢。下面我們?yōu)槟銣?zhǔn)備了一些設(shè)計素材和教程。