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"> * { margin: 0; padding: 0; list-style: none; border: 0; } body { background: #bcbcbc; } .main { width: 600px; height: 400px; margin: 0 auto; position: relative; } .main img { position: absolute; right: 0; bottom: 0; width: 100px; height: 100px; } #canvas { display: block; background: #000; } </style> </head> <body> <div class="main"> <canvas id="canvas"></canvas> </div> <script type="text/javascript"> var canvas = document.getElementById('canvas'); var ctx = canvas.getContext("2d"); var width = 600; var height = 400; //宣告顏色陣列使每句話顏色都不一樣! var colorArr = ["yellow", "pink", "orange", "red", "green"]; var textArr = [ "螞蟻部落歡迎您", "只有努力才會有美好的未來", "div教程真的不錯", "正規表示式教程還需要完善", "css3教程的演示效果很好", "每一天都是新的大家好好珍惜" ] canvas.width = width; canvas.height = height; ctx.font = "20px Courier New"; //初始的每一句話的左邊距離canvas左邊的距離 var numArrL = [80, 100, 5, 300, 500, 430]; //初始的每一句話的上邊距離canvas上邊的距離 var numArrT = [80, 100, 20, 300, 380, 210]; setInterval(function () { //清理一下canvas畫布 ctx.clearRect(0, 0, canvas.width, canvas.height); ctx.save(); //這個迴圈是迴圈便利每一句到話canvas上以及的顏色,每句話的移動速度 //判斷每一句話走出canvas後讓它自動回來再從canvas的右邊走到左邊 for (var j = 0; j < textArr.length; j++) { numArrL[j] -= (j + 1) * 0.6; ctx.fillStyle = colorArr[j] ctx.fillText(textArr[j], numArrL[j], numArrT[j]); if (numArrL[j] <= -500) { numArrL[j] = canvas.width; } } ctx.restore(); }, 30) </script> </body> </html>
相關文章
- canvas載入效果程式碼例項Canvas
- canvas原型鐘錶效果程式碼例項Canvas原型
- canvas氣泡上浮效果程式碼例項Canvas
- canvas繪製箭頭效果程式碼例項Canvas
- JavaScript彈幕效果程式碼詳解JavaScript
- canvas刮刮樂程式碼例項Canvas
- canvas繪製扇形程式碼例項Canvas
- canvas繪製網格程式碼例項Canvas
- jQuery tab選項卡效果程式碼例項jQuery
- CSS橢圓效果程式碼例項CSS
- flex彈性佈局程式碼例項Flex
- canvas繪製機器貓程式碼例項Canvas
- canvas繪製拋物線程式碼例項Canvas線程
- canvas translate()、scale()和rotate()方法程式碼例項Canvas
- 美化滾動條效果程式碼例項
- css3水滴效果程式碼例項CSSS3
- css背景虛化效果程式碼例項CSS
- canvas模擬eharts首頁動畫效果Canvas動畫
- canvas繪製圓形鐘錶程式碼例項Canvas
- jQuery點選滑出層效果程式碼例項jQuery
- css3晃動效果程式碼例項CSSS3
- CSS3心形效果程式碼例項CSSS3
- div前後翻轉效果程式碼例項
- 當前文字框高亮效果程式碼例項
- CSS3旋轉效果程式碼例項CSSS3
- 淡入淡出效果簡單程式碼例項
- CSS3滑過光束效果程式碼例項CSSS3
- CSS3小黃人效果程式碼例項CSSS3
- css3折角效果程式碼例項CSSS3
- CSS3梯形效果程式碼例項CSSS3
- CSS3背景漸變效果程式碼例項CSSS3
- CSS3星系運動效果程式碼例項CSSS3
- JS彈幕程式碼分析JS
- canvas漫天飛雪效果程式碼Canvas
- html實現簡單ListViews效果的例項程式碼HTMLView
- 商品搶購倒數計時效果程式碼例項
- CSS3文字凹凸效果程式碼例項CSSS3
- jQuery彈幕效果詳解jQuery
- CSS3文字陰影效果程式碼例項CSSS3