canvas小球碰壁效果
分享一段程式碼例項,它利用canvas實現了小球碰壁效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> canvas { border:2px dotted #ccc; } </style> </head> <body> <canvas id="canvas" width="550" height="450"></canvas> <script type="text/javascript"> var canvas = document.getElementById('canvas'); var ctx = canvas.getContext('2d'); var raf; var ball = { x: 100, y: 100, vx: 5, vy: 2, radius: 25, color: 'blue', draw: function() { ctx.beginPath(); ctx.arc(this.x, this.y, this.radius, 0, Math.PI * 2, true); ctx.closePath(); ctx.fillStyle = this.color; ctx.fill(); } }; function draw() { ctx.clearRect(0, 0, canvas.width, canvas.height); ball.draw(); ball.x += ball.vx; ball.y += ball.vy; if (ball.y + ball.vy > canvas.height || ball.y + ball.vy < 0) { ball.vy = -ball.vy; } if (ball.x + ball.vx > canvas.width || ball.x + ball.vx < 0) { ball.vx = -ball.vx; } raf = window.requestAnimationFrame(draw); } canvas.addEventListener('mouseover', function(e) { raf = window.requestAnimationFrame(draw); }); canvas.addEventListener("mouseout", function(e) { window.cancelAnimationFrame(raf); }); ball.draw(); </script> </body> </html>
相關文章
- canvas小球碰壁隨機運動Canvas隨機
- canvas小球擺動效果Canvas
- JavaScript小球碰壁詳解JavaScript
- canvas小球亂撞Canvas
- 奇妙的canvas:彈跳小球Canvas
- JavaScript隨機漂浮碰壁效果JavaScript隨機
- canvas小球拋物線運動Canvas
- js小球重力和碰撞效果JS
- canvas繪製小球漸隱漸現Canvas
- css3小球上下移動效果CSSS3
- CSS3小球靜態環繞效果CSSS3
- canvas簽名效果Canvas
- canvas矩形拖拽效果Canvas
- canvas實現波浪效果Canvas
- canvas蔚藍星空效果Canvas
- canvas繪製流星效果Canvas
- HTML5中canvas實現小球擊打小方塊遊戲HTMLCanvas遊戲
- canvas設定陰影效果Canvas
- canvas圓形時鐘效果Canvas
- canvas簡單畫板效果Canvas
- canvas繪製風車效果Canvas
- canvas動態時鐘效果Canvas
- Canvas系列之一——濾鏡效果Canvas
- canvas環形進度條效果Canvas
- canvas實現 漂亮的下雨效果Canvas
- canvas立體效果的圓環Canvas
- canvas漫天飛雪效果程式碼Canvas
- canvas具有漸變效果的矩形Canvas
- canvas水平勻速運動效果Canvas
- canvas透明度的矩形效果Canvas
- canvas小畫板——(3)筆鋒效果Canvas
- 由canvas實現btn效果有感Canvas
- canvas繪製網格射線效果Canvas
- canvas載入效果程式碼例項Canvas
- canvas繪製卡通人臉形象效果Canvas
- canvas繪製多個圓圈效果Canvas
- canvas模擬eharts首頁動畫效果Canvas動畫
- canvas原型鐘錶效果程式碼例項Canvas原型