av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

原生js+canvas實現(xiàn)下雪效果

瀏覽:124日期:2024-04-27 09:55:01

本文實例為大家分享了js+canvas實現(xiàn)下雪效果的具體代碼,供大家參考,具體內(nèi)容如下

效果展示:

原生js+canvas實現(xiàn)下雪效果

源碼展示:

<!doctype html><html><head> <meta charset='utf-8'> <title>canvas下雪效果(原生js)</title> <style> * { margin: 0; padding: 0 } html, body { width: 100%; height: 100%; overflow: hidden; background-color: #222; } #canvas { position: absolute; top: 0; left: 0; } </style></head><body><canvas id='canvas'></canvas><img src='http://www.4tl426be.cn/bcjs/xh.png' alt='雪花'><img src='http://www.4tl426be.cn/bcjs/bj.jpg' alt='背景'> <script> window.onload = function () { var canvas = document.getElementById('canvas'); var imgSnow = document.getElementById('imgSnow'); var bgSnow = document.getElementById('bgSnow'); var ctx = canvas.getContext(’2d’); var mbody = document.querySelector('body'); canvas.width =mbody.offsetWidth; canvas.height = mbody.offsetHeight; var GetRandomNum = function (Min, Max) { var Range = Max - Min; var Rand = Math.random(); return (Min + Math.round(Rand * Range)); } // console.log(GetRandomNum(0, canvas.width)) var snowArray = {}; //雪花對象 var snowIndex = 0; //標(biāo)識符 var setting = { num: 30, //數(shù)量 snowSize: 20, //大小 startX: Math.random() * canvas.width, //起始橫坐標(biāo) startY: 0, //起始縱坐標(biāo) vy: 0.01 } function snow() { // 起始橫坐標(biāo) this.x = Math.random() * canvas.width; // 起始縱坐標(biāo) this.y = setting.startY; this.size = setting.snowSize + Math.random() * 10 - 10; //橫坐標(biāo)偏移量 this.vx = Math.random() * 3 - 2; //偏移量 //縱坐標(biāo)偏移量 this.vy = Math.random() * 10; this.life = 0; this.maxLife = 100; this.id = snowIndex; //當(dāng)前信息保存至對象snowArray snowArray[snowIndex] = this; snowIndex++; } snow.prototype.draw = function () { this.x += this.vx; this.y += this.vy; this.vy += setting.vy; this.life++; //刪除 if (this.y > canvas.height * 0.9 - 20) { snowArray[this.id] } else if (this.life >= this.maxLife) { snowArray[this.id] } ctx.drawImage(imgSnow, this.x, this.y, this.size, this.size) } setInterval(function () { ctx.drawImage(bgSnow, 0, 0, canvas.width, canvas.height); //數(shù) for (var i = 0; i < setting.num; i++) { if (Math.random() > 0.97) { new snow(); } } for (var i in snowArray) { snowArray[i].draw(); } }, 100)202082104246954 }</script> </body></html>

圖片:

原生js+canvas實現(xiàn)下雪效果

雪花:

原生js+canvas實現(xiàn)下雪效果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 久国产精品 | 亚洲欧美在线观看 | ww 255hh 在线观看 | www.yw193.com| 永久看片| 国产精品久久久久久久久久了 | 国产91丝袜 | 国产亚洲成av人片在线观看桃 | 国产在视频一区二区三区吞精 | 91精品在线播放 | 欧美a在线看 | 亚洲国产精品一区二区第一页 | 中文在线一区 | 亚洲精品片 | 伊人久久免费 | 亚洲一区久久 | 国产精品毛片无码 | 毛片免费看 | 精品欧美一区二区在线观看视频 | 国产精品视频久久 | 美女艹b | 一区二区免费在线 | 成人网在线观看 | 成人一区二区在线 | 狠狠色综合网站久久久久久久 | 久久久精品视频免费 | 欧美国产激情二区三区 | 国产成人精品久久二区二区91 | 国产伦一区二区三区 | 人人九九精 | h网站在线观看 | 精品久久国产老人久久综合 | 夜久久 | 久久久久久黄 | 国产精品欧美一区二区三区不卡 | 国产激情视频网站 | 超碰97在线免费 | 精品久久99 | 一级做a爰片性色毛片16美国 | 欧美日韩在线精品 | 国精日本亚洲欧州国产中文久久 |