国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

原生JS實現煙花效果

瀏覽:75日期:2024-05-19 14:38:34

原生JS實現煙花效果,點擊頁面生成煙花,向四周擴散,然后再墜落下去。(這里的煙花我是用的特殊字符愛心形狀)

原生JS實現煙花效果

基礎css代碼

/* 設置基礎的css樣式 */ body{background: #000;overflow: hidden;} .fire{position: absolute;width: 4px;height: 30px;}

js代碼:

1、給頁面添加點擊事件,生成主體煙花

//給頁面設置點擊事件 document.onclick = function(eve){ var e = eve || window.event; //設置一個空數組,用來后面存放小煙花 var arr = []; //獲取鼠標點擊的位置 var x = e.clientX; var y = e.clientY; //設置步長 var speed = 20; //生成大煙花,設置他的css樣式,出發點在可視區頁面的下方 var fire = document.createElement(’div’); fire.className = ’fire’; fire.style.background = randomColor(); fire.style.left = x + ’px’; fire.style.top = document.documentElement.clientHeight+’px’; //將大煙花追加到頁面上 document.body.appendChild(fire);

2、設置定時器,讓煙花向上運動,刪除

//生成定時器 var t = setInterval(function(){ //判斷如果大煙花的TOP值小于小于目標值,清除定時器,并且將大煙花清除 if(fire.offsetTop <= y){ clearInterval(t); document.body.removeChild(fire); //執行show(生成小煙花) show(); } //讓大煙花垂直向上運動 fire.style.top = fire.offsetTop - speed +’px’; },30);

3、然后在點擊的位置生成小煙花,設置樣式

function show(){ //利用循環,生成50個小煙花,給小煙花添加css屬性 for(var i=0;i<50;i++){ var sFire = document.createElement(’div’); // sFire.className = ’small-fire’; sFire.style.left = x +’px’; sFire.style.top = y +’px’; // sFire.style.background = randomColor(); sFire.style.color = randomColor(); sFire.innerHTML = ’❤’; sFire.style.position = ’absolute’; //生成隨機數 var a=Math.random()*360; sFire.sx = Math.sin(a*180/Math.PI)*20*Math.random(); sFire.sy = Math.cos(a*180/Math.PI)*20*Math.random(); //將小煙花追加到頁面上 document.body.appendChild(sFire); //將生成的煙花信息都添加到數組中 arr.push(sFire); } }

4、設置定時器,讓小煙花完成自由落體運動

setInterval(function move(){ //利用循環一直改變小煙花的位置 for(var i=0;i<arr.length;i++){ //設置將每次循環的第i個小煙花的運動范圍 arr[i].style.left = arr[i].offsetLeft + arr[i].sx + ’px’; arr[i].style.top = arr[i].offsetTop + arr[i].sy + ’px’; //讓煙花垂直方向的位置每次都增加,實現下落效果 arr[i].sy += 1; //判斷煙花是否運動出屏幕可視區,如果是,就將它刪除 if(arr[i].offsetLeft<0 || arr[i].offsetLeft > document.documentElement.clientWidth || arr[i].offsetTop > document.documentElement.clientHeight){ document.body.removeChild(arr[i]); // arr.splice(i,1); } } },30) }

5、最后別忘了我們的隨機數和隨機顏色的封裝

// 范圍隨機數 function random(max,min){ return Math.round(Math.random()*(max-min)+min); } // 隨機顏色 function randomColor(){ return 'rgb('+random(0,255)+','+random(0,255)+','+random(0,255)+')'; }

最后我們的煙花效果就實現了

今天的分享就到這里,希望大家能夠喜歡。

更多JavaScript精彩特效分享給大家:

Javascript菜單特效大全

javascript仿QQ特效匯總

JavaScript時鐘特效匯總

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 欧美一级v片 | 亚洲男同视频网站 | 亚洲国产一区在线精选 | 在线观看亚洲免费视频 | 亚洲一区二区三区精品影院 | 精品极品三级久久久久 | 中文字幕一二三区乱码老 | 综合精品 | 日韩中文字幕精品久久 | 欧美韩国日本一区 | 午夜宅男宅女看在线观看 | 成年人视频在线观看免费 | www.久久久| 欧美成人亚洲综合精品欧美激情 | 亚洲美女视频免费 | 亚洲欧洲一级 | 国产伦精品一区二区三区四区 | 亚洲欧美日本在线 | 国产成人亚洲精品久久 | 欧美激情国产一区在线不卡 | 手机看片精品高清国产日韩 | 精品在线视频免费观看 | 91精品国产高清久久久久久91 | 欧美一级特黄aa大片在线观看免费 | 一级欧美激情毛片 | 国产黄色片在线观看 | www.黄色免费 | 日韩精品一区二区三区免费视频 | 最近中文在线中文 | 亚洲精品国产成人99久久 | 精品成人免费一区二区在线播放 | 男女国产视频 | 国产精品久久久久毛片真精品 | 国产精品亚洲综合久久 | 精品国产96亚洲一区二区三区 | 欧美一级大片在线观看 | 香蕉视频老司机 | 看看免费a一片欧 | 亚洲波多野结衣日韩在线 | 日本b站一卡二卡乱码入口 日本s色大片在线观看 | 免费欧洲毛片a级视频无风险 |