canvas實現的雪花飄落效果
分享一段程式碼例項,它利用canvas實現了雪花飄落效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> body{ font-family:Arial,Helvetica,sans-serif; font-size:100%; line-height:1em; background:#003366; } </style> </head> <body> <canvas id = "canvas" style="position:absolute;"></canvas> <script> var X = window.innerWidth-50; var Y = window.innerHeight-50; var angle = 0; var mp = 30; var point = new Array(); for(var i=0;i<=mp;i++){ point.push({ x:Math.random()*X, y:Math.random()*Y, r:Math.random()*6+1, d:Math.random()*30 }); } function init(){ var c = document.getElementById('canvas'); canvas.width = X; canvas.height = Y; var ctx = c.getContext('2d'); ctx.clearRect(0,0,X,Y); ctx.fillStyle = 'rgba(255, 255, 255, 0.8)'; ctx.beginPath(); for(var i = 0;i<=mp;i++){ ctx.moveTo(point<i>.x,point<i>.y); ctx.arc(point<i>.x,point<i>.y,point<i>.r,0,2*Math.PI,true); } ctx.fill(); update(); } function update() { angle += 0.01; for (var i = 0; i <=mp; i++) { var p = point<i>; p.y += Math.cos(angle + p.d) + 1 + p.r / 2; p.x += Math.sin(angle) * 2; if (p.x > X + 5 || p.x < -5 || p.y > Y) { point<i> = { x: Math.random() * X, y: -10, r: p.r, d:p.d } } } } setInterval(init,33); $('h1').fadeIn(3000); $('.slide3').hide(); $('.slide2').hide(); $('.slide1').mousemove(function(){ }).mouseout(function(){ $(this).css('border','none'); }) $('.slide1-ul a').mousemove(function(){ $(this).css('border-bottom','1px solid #e4e4e4'); }).mouseout(function(){ $(this).css('border-bottom','none'); }).fadeIn(5000); $('.slide-right').click(function(){ $('.slide1').css({'-webkit-transform-style':'preserve-3d','-webkit-animation':'spin 3s'}); }); </script> </body> </html>
相關文章
- js純程式碼為網站站點新增雪花飄落效果JS網站
- JavaScript 雪花飄舞效果詳解JavaScript
- 部落格園美化-隨季節變化實現不同的飄落效果
- canvas實現波浪效果Canvas
- canvas實現 漂亮的下雨效果Canvas
- 前端實現旗幟飄動效果系列(Ⅰ):dom+css實現前端CSS
- 基於HTML5+Webkit實現樹葉飄落動畫HTMLWebKit動畫
- Android 使用graphics.Camera類實現自定義旋轉飄落Android
- 由canvas實現btn效果有感Canvas
- html5 飄雪花動畫(增加背景音樂)HTML動畫
- DOM 和 Canvas 如何實現文字豎向排列的效果Canvas
- 雪花演算法的實現演算法
- Canvas實現放大鏡效果完整案例分析(附程式碼)Canvas
- 前端實現彈幕效果的方法總結(包含css3和canvas的實現方式)前端CSSS3Canvas
- Go 實現雪花演算法Go演算法
- 基於canvas剪輯區域功能實現橡皮擦效果Canvas
- canvas矩形拖拽效果Canvas
- canvas小球碰壁效果Canvas
- canvas簽名效果Canvas
- canvas立體效果的圓環Canvas
- canvas具有漸變效果的矩形Canvas
- canvas透明度的矩形效果Canvas
- canvas蔚藍星空效果Canvas
- canvas繪製流星效果Canvas
- canvas小球擺動效果Canvas
- Twitter雪花演算法SnowFlake演算法的java實現演算法Java
- canvas設定陰影效果Canvas
- canvas圓形時鐘效果Canvas
- canvas簡單畫板效果Canvas
- canvas繪製風車效果Canvas
- canvas動態時鐘效果Canvas
- 實現聚焦效果
- 用canvas實現流星特效Canvas特效
- canvas拼圖功能實現Canvas
- canvas 實現雷達圖Canvas
- canvas實現截圖功能Canvas
- canvas實現的前端壓縮裁剪工具Canvas前端
- Elasticsearch實現Mysql的Like效果ElasticsearchMySql
- 學習 canvas 的 globalCompositeOperation 做出的神奇效果Canvas