日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

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

JS實現放煙花效果

瀏覽:166日期:2024-05-19 18:05:51

本文實例為大家分享了JS實現放煙花效果的具體代碼,供大家參考,具體內容如下

<!DOCTYPE html><html> <head> <meta charset='UTF-8'> <title>放煙花——欣欣博客</title> <style> html,body{overflow:hidden;} body,div,p{margin:0;padding:0;} body{background:#000;font:12px/1.5 arial;color:#7A7A7A;} .fire { width: 3px; height: 30px; background: white; position: absolute; } .spark { position: absolute; width: 6px; height: 6px; } </style> <script src='http://m.b3g6.com/bcjs/move.js'></script> <script> οnlοad=function(){ document.οnclick=function(e){ e =e||event; var coord ={ x:e.clientX, y:e.clientY }; new Fire(coord).init().launch(); } function Fire(coord){ var self = this; //初始化 this.init=function(){ this.ball = document.createElement('div'); this.ball.className='fire'; this.ball.style.left = coord.x+'px'; this.ball.style.top= window.innerHeight +'px'; document.body.appendChild(this.ball); return this; } //發射 this.launch=function(){ animate(this.ball,{left:coord.x,top:coord.y,height:3},{callback:function(){ self.explode(); }}); return this; } //爆炸 this.explode=function(){ this.destory(); var count = randomInt(30,50); for(var i =0;i<count;i++){ new Spark(coord).init().parabola(); } } //銷毀 this.destory = function(){ this.ball.remove(); } } function Spark(coord){ var self = this; this.init=function(){ this.box = document.createElement('div'); this.box.className='spark'; this.box.style.backgroundColor='#'+randomColor(); console.log(this.box.style.backgroundColor) this.box.style.left = coord.x+'px'; this.box.style.top = coord.y+'px'; this.box.speedX = randomInt(-20,20); this.box.speedY = randomInt(-20,10); document.body.appendChild(this.box); return this; } this.parabola=function(){ this.timer =setInterval(function(){ if(self.box.offsetTop >window.innerHeight){ clearInterval(self.timer); self.destroy(); return; } self.box.style.left = self.box.offsetLeft + self.box.speedX +'px'; self.box.style.top = self.box.offsetTop +self.box.speedY++ +'px'; },30) } this.destory=function(){ this.box.remove(); } } //隨機整數 function randomInt(min,max){ return Math.round(Math.random()*(max-min)+min); } //隨機顏色 function randomColor(){ var R = Math.round( Math.random()*255 ).toString(16); var G = Math.round( Math.random()*255 ).toString(16); var B = Math.round( Math.random()*255 ).toString(16); return (R.length<2?'0'+R:R) + (G.length<2?'0'+G:G)+ (B.length<2?'0'+B:B); } } </script> </head> <body> </body></html>

move.js

/** * * @param {Object} obj 目標對象 * @param {Object} json 要改變的屬性 * @param {Object} extend {buffer,callback} 當buffer為true時為彈性運動 * callback會在運動結束時,被執行 * animate(obj, {top:500, left: 300}, {callback:function(){}, buffer: true}) */function animate(obj, json, extend){ extend = extend || {}; if(obj.isMoving){ return; } else { stop(); obj.isMoving = true; } //obj = Object.assgin(obj,extend); obj.buffer = extend.buffer; obj.callback = extend.callback; obj.timerlist = {}; //為每一個屬性添加一個定時器 for(var attr in json){ (function(attr){ obj.timerlist[attr] = {speed:0}; obj.timerlist[attr].timer = setInterval(function(){ //首先得到當前值 var iNow = 0; if(attr == 'opacity'){ iNow = getStyle(obj, attr) * 100; } else { iNow = getStyle(obj, attr); } var speed = obj.timerlist[attr].speed; //根據目標值,計算需要的速度 if(obj.buffer==true){ speed += (json[attr] - iNow)/5; speed *= 0.75; } else { speed = (json[attr] - iNow)/5; } //當無限接近目標值時,停止定時器 if(Math.abs(iNow - json[attr]) < 0.5){ clearInterval(obj.timerlist[attr].timer); delete obj.timerlist[attr]; if(getObjLength(obj.timerlist)==0){//所有定時器已停止 stop(); obj.callback ? obj.callback() : ''; } } else { //根據速度,修改當前值 if(attr == 'opacity'){ obj.style.opacity = (iNow+speed)/100; obj.style.filter = ’alpha(opacity=’ + parseFloat(iNow+speed) + ’)’; } else { obj.style[attr] = iNow+speed+'px'; } obj.timerlist[attr].speed = speed; } }, 30); })(attr); } function clearTimer(){ for(var i in obj.timerlist){ clearInterval(obj.timerlist[i]); } } function getStyle(obj, attr){ if(obj.currentStyle){ return isNaN(parseFloat(obj.currentStyle[attr])) ? obj.style[attr]=0 : parseFloat(obj.currentStyle[attr]); } else { return isNaN(parseFloat(getComputedStyle(obj, null)[attr])) ? obj.style[attr]=0 : parseFloat(getComputedStyle(obj, null)[attr]); } } function getObjLength(obj){ var n = 0; for(var i in obj){ n++; } return n; } function stop(){ clearTimer();//清除所有定時器 obj.isMoving = false; }}

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

Javascript菜單特效大全

javascript仿QQ特效匯總

JavaScript時鐘特效匯總

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

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品视频久久| 99pao成人国产永久免费视频 | 亚洲欧美视频| 97久久亚洲| 国产精品porn| 精品国产不卡| 国产aⅴ精品一区二区三区久久| 久久精品国产99国产| 欧美日韩18| 日韩avvvv在线播放| 亚洲深夜福利| 亚洲精品乱码日韩| 欧美精品影院| 麻豆极品一区二区三区| 精品精品国产三级a∨在线| 国产精品白丝av嫩草影院| 国产午夜精品一区在线观看| 国产精品日本一区二区三区在线| 久久精品99久久久| 欧美1区2区3| 欧美日韩视频网站| 99热国内精品| 亚洲一区二区三区四区五区午夜| 亚洲精品一区二区妖精| 国产精品呻吟| 美女精品网站| 91精品国产自产在线丝袜啪| 国产日韩欧美在线播放不卡| 国产精品xxxav免费视频| 国产精品二区不卡| 在线成人动漫av| 伊人国产精品| 国产欧美亚洲精品a| 精品久久久久久久| 久久久久久色 | 精品视频一区二区三区四区五区| 久久久久久久欧美精品| 久久中文字幕二区| 久久国产生活片100| 日韩精品专区| 亚久久调教视频| 在线看片国产福利你懂的| 三级欧美韩日大片在线看| 国产精品久久观看| 日韩国产欧美在线播放| 国产综合精品| 精品一区二区三区亚洲| 中文字幕日韩高清在线 | 在线免费观看亚洲| 日韩中文在线电影| 欧美亚洲一区二区三区| 亚洲国产成人精品女人| 久久不卡国产精品一区二区| 中国女人久久久| 首页国产精品| 国产日韩欧美三级| 中文无码日韩欧| 激情欧美亚洲| 麻豆视频在线观看免费网站黄 | 另类综合日韩欧美亚洲| 免费成人在线影院| 久久国产直播| 精品一区av| 国产日韩视频在线| 日韩精品成人| 天海翼亚洲一区二区三区| 五月天久久777| 伊人久久在线| 久久精品三级| 欧美日韩一区二区国产| 蜜臀av一区二区三区| 国产在线日韩| 美女一区网站| 日韩久久精品网| 成人精品高清在线视频| 国产精品mm| 国产伦理一区| 欧美一区免费| 日本一区二区三区中文字幕| 久久最新视频| 日韩精品一级中文字幕精品视频免费观看 | 日韩不卡一二三区| 亚洲区第一页| 亚洲精选91| 亚洲aa在线| 日本不卡中文字幕| 国产亚洲久久| 97se亚洲| 国产日韩欧美一区二区三区 | 欧美特黄一区| 樱桃成人精品视频在线播放| 婷婷久久一区| 日韩制服丝袜先锋影音| 免费看欧美美女黄的网站| 蜜臀va亚洲va欧美va天堂 | 日韩一区电影| 老牛影视精品| 成人福利av| 99久久久久| 欧美日韩国产亚洲一区| 日本大胆欧美人术艺术动态| 只有精品亚洲| 国产探花一区在线观看| 欧美在线黄色| 精品视频一二| 日本欧美不卡| 蜜桃视频欧美| 视频在线观看一区二区三区| 久久激情中文| 亚洲免费婷婷| 日韩国产在线一| 国产精品亚洲综合在线观看| 久久只有精品| 久久影院一区| 少妇精品在线| 久久精品资源| 亚洲v在线看| 美女被久久久| 国产毛片一区二区三区| 毛片在线网站| 亚洲专区欧美专区| 国产日韩视频在线| 亚洲人成在线网站| 美女精品在线观看| 国产精品乱战久久久| 日韩三区在线| 国产美女精品| 国产精品99久久免费观看| 国产亚洲欧美日韩在线观看一区二区 | 成人免费一区| 激情欧美丁香| 日韩欧乱色一区二区三区在线| 国产精品羞羞答答在线观看| 电影亚洲精品噜噜在线观看| 日韩中文字幕不卡| 精品国产黄a∨片高清在线| 久久精品导航| 日韩欧美中文字幕一区二区三区| 国产精品乱战久久久| 精精国产xxxx视频在线野外| 亚洲欧美日本国产| 欧美二三四区| 午夜性色一区二区三区免费视频| 精品视频自拍| 三级欧美在线一区| 国产传媒在线| 少妇精品久久久一区二区| 国产拍在线视频| 偷拍亚洲精品| 欧美午夜精彩| 精品三级国产| 中文字幕乱码亚洲无线精品一区| 高清一区二区三区| 在线看片日韩| 青青久久av| 国产伦精品一区二区三区千人斩| 亚洲电影在线| 久久影院一区二区三区| 日韩专区在线视频| 久久青草久久| 国产精品久久777777毛茸茸| 欧美日韩三区| 成人片免费看| 欧美激情综合| 日本亚洲最大的色成网站www| 极品日韩av| 97精品国产| 国产亚洲一卡2卡3卡4卡新区| 久久精选视频| 国产精品mv在线观看| 日韩一区精品字幕| 在线视频观看日韩| 精品久久不卡| 国产精品久久亚洲不卡| 综合一区二区三区| 夜久久久久久| 99久久九九| 国产精选在线| 久久精品天堂| 国产精品www.| 91综合久久爱com| 中文在线日韩| 在线国产精品一区| 宅男噜噜噜66国产日韩在线观看| 国产不卡一区| 精品国产中文字幕第一页| 欧美一区二区三区久久精品| 中文字幕亚洲精品乱码| 久久国产高清| 亚洲欧美高清| 亚州av乱码久久精品蜜桃| 亚洲播播91| 国产传媒av在线| 日韩av自拍| av日韩中文| 三级精品视频| 久久天堂av| 久久国产中文字幕| 久久精品99久久无色码中文字幕| 国产aⅴ精品一区二区四区|