Skycons 利用 HTML5 的 Canvas 的方式來產生常見的 10 種天氣圖示,甚至還能讓天氣動起來呢!接下來,只要搭配像是 Forecast API,就能在網頁中加上天氣效果囉!
套件名稱:Skycons
套件版本:N/A
作者網站:http://darkskyapp.github.io/skycons/
發佈日期:2013-04-02
檔案大小:18.1 KB
檔案下載:skycons.js
參數選項說明:
檢視原始碼 JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | color(選填) 描述: 畫筆的顏色 預設值: 'black' list(選填) 描述: 用來存放目前該物件所畫的元素物件 預設值: [] interval(選填) 描述: 計時器的 handle 預設值: null resizeClear(選填) 描述: 是否使用重新指定 Canvas 寬度的方式來清除畫布內容 預設值: false |
Skycons 所支援的天氣參數:
檢視原始碼 JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | Skycons.CLEAR_DAY 描述: 晴朗無雲的太陽 Skycons.CLEAR_NIGHT 描述: 晴朗無雲的月亮 Skycons.PARTLY_CLOUDY_DAY 描述: 多雲但看的到太陽 Skycons.PARTLY_CLOUDY_NIGHT 描述: 多雲但看的到月亮 Skycons.CLOUDY 描述: 多雲 Skycons.RAIN 描述: 下雨 Skycons.SLEET 描述: 下霰(下雨雪) Skycons.SNOW 描述: 下雪 Skycons.WIND 描述: 強風 Skycons.FOG 描述: 濃霧 |
方法說明:
檢視原始碼 JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | // 建立一個 Skycons 物件實例 var skycons = new Skycons(opts); // 在指定的元素上使用指定的 draw 函式來畫圖 skycons.add(el, draw); // 更新指定的元素上的 draw 函式(畫出另一個圖) skycons.set(el, draw); // 停止更新指定的元素上的動畫 skycons.remove(el); // 畫出指定的圖畫 skycons.draw(obj, time); // 開始執行動畫 skycons.play(); // 暫停執行動畫 skycons.pause(); |
使用範例:
檢視原始碼 JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="skycons.js"></script> <script type="text/javascript"> $(function(){ // 使用 #999 顏色的畫筆 var skycons = new Skycons({ color: '#999', resizeClear: true }); // 利用 id 來新增 skycons.add('clear-day', Skycons.CLEAR_DAY); // 也可以利用 DOM 來新增 skycons.add(document.getElementById('clear-night'), Skycons.CLEAR_NIGHT); // 也可以利用 .set() 的方式來新增或是修改 skycons.set('partly-cloudy-day', Skycons.PARTLY_CLOUDY_DAY); skycons.set('partly-cloudy-night', Skycons.PARTLY_CLOUDY_NIGHT); skycons.set('cloudy', Skycons.CLOUDY); skycons.set('rain', Skycons.RAIN); skycons.set('sleet', Skycons.SLEET); skycons.set('snow', Skycons.SNOW); skycons.set('wind', Skycons.WIND); skycons.set('fog', Skycons.FOG); skycons.set('clear-night', Skycons.FOG); // 開始執行動畫 skycons.play(); ; console.log(skycons); $('#play').click(function(){ // 開始執行動畫 skycons.play(); }); $('#pause').click(function(){ // 暫停執行動畫 skycons.pause(); }); $('#remove').click(function(){ // 停止更新晴天的動畫 skycons.remove('clear-day'); // 清掉該畫布內容 var $clearDay = $('#clear-day'); $clearDay[0].getContext('2d').clearRect(0, 0, $clearDay.width(), $clearDay.height()); }); }); </script> <body> <button id="play">開始執行動畫</button> <button id="pause">暫停執行動畫</button> <button id="remove">停止更新晴天的圖</button> <br> <canvas id="clear-day" width="64" height="64"></canvas> <canvas id="clear-night" width="64" height="64"></canvas> <canvas id="partly-cloudy-day" width="64" height="64"></canvas> <canvas id="partly-cloudy-night" width="64" height="64"></canvas> <canvas id="cloudy" width="64" height="64"></canvas> <canvas id="rain" width="64" height="64"></canvas> <canvas id="sleet" width="64" height="64"></canvas> <canvas id="snow" width="64" height="64"></canvas> <canvas id="wind" width="64" height="64"></canvas> <canvas id="fog" width="64" height="64"></canvas> </body> |
你好,我想請你幫我把這個插件放到我的個人網站,請問多久能好?
由於上方的紅色按鈕無法正常的到頁面,我只好留言在這。[急件]
謝謝!