轉眼間,一年一度的圣誕節又來臨了。在這個越來越受到國人重視的節日中,每個人有每個人的浪漫方式,當然程序員們也不例外。
下面就來看看一些IT企業和程序員們是如何為這個節日增添不一樣的氣氛的。
一、來自IT巨頭的問候
1. Google的彩蛋
每到節日,Google就會在其搜索引擎中加入一些彩蛋,在用戶搜索特定關鍵詞的時候出現特殊的頁面效果。臨近圣誕,當用戶在Google中輸入“圣誕節”時,會頁面上端出現飄雪的場景和圣誕老人駕駛鹿車飛馳的畫面。
2. 百度的小游戲
當用戶在百度中搜索“圣誕節”時,就會出現一個小游戲。該游戲基于HTML5制作。
詳細信息可查看這個頁面的源碼。http://www.baidu.com/ur/show/uhchristmas?from=christmasresult
3. 微軟追蹤圣誕老人網站
微軟今年推出了一個追蹤圣誕老人的網站,該主題網站基于HTML5和WebGL技術,首頁有圣誕節的倒計時,此外還有許多好玩的在線游戲,最主要的是該網站在觸摸設備上也有很好的體驗。
網站地址:http://www.noradsanta.org/
二、來自初級程序員的問候
如果你剛開始學習HTML5,你可以制作一些簡單的效果來慶祝圣誕節。
1.使用canvas功能繪制的簡單圣誕樹
在繪圖板中繪制下面這個圖形并不算什么難事,但是使用代碼來生成這個圣誕樹卻需要一定的HTML5基礎。
下面這個圖形使用HTML5中的<canvas>標簽來繪制,如果你熟悉HTML5,這對你來說輕而易舉。
源碼:http://www.spjeff.com/2013/12/05/christmas-tree-html5-js-and-css3/
2.雪花效果
jQuery的出現,讓各種動畫效果變得更加容易。比如,你可以通過jQuery、jQuery.snow.js插件以及少量的代碼,就可以讓頁面中飄舞這雪花。
源碼:https://github.com/tzach/merry-christmas
3. 一個非常漂亮的圣誕賀卡
該賀卡通過Construct2制作,然后通過c2runtime.js使得該賀卡可以直接在網頁中運行。Construct2是一款用來制作HTML5應用的軟件,擁有一個清晰直觀、支持“拖拽”操作的開發環境,即使你沒有任何編程經驗也能開發自己的HTML5應用。
演示:http://3.s3.envato.com/files/72733144/blue/index.html
三、來自中級程序員的問候
隨著編程技能的進一步掌握,你可以使用稍復雜的技術來實現一些更絢麗的效果。
1. CSS3實現圣誕樹動畫
該動畫主要使用CSS3實現各種轉場效果,并使用了HTML5中的<audio>標簽來播放音頻文件。同時還使用了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庫創建圣誕樹
three.js是一款開源的JavaScript 3D框架,也可以說是一款WebGL框架,幾乎可以實現所有的3D場景。本文所提到的圣誕樹就是用three.js和HTML5技術實現的。
演示: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>標簽和three.js實現了3D的雪花飛舞效果。你可以拖動鼠標進行旋轉。
演示:http://seb.ly/demos/JSSnowNew/snow3d.html
源碼:https://github.com/sebleedelisle/live-coding-presentations/tree/master/2011/JSSnow
四、來自高級程序員的問候
1. 代碼不到1KB的3D圣誕樹
下面這個3D圣誕樹只用1021字節的JavaScript代碼編寫而成,逼真的3D及旋轉效果,將JavaScript功能發揮到了極致。
演示: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操控移動,按住鼠標左鍵拖拽控制方向,整個Demo是使用Oak3D框架制作的。
演示地址:http://christmas.oak3d.com/Scene/MerryChristmas.html
五、自己動手
看完上面的這些效果,你是不是也想自己動手做一個屬于自己的圣誕禮物呢。下面我們為你準備了一些設計素材和教程。