本文实例讲述了js实现飞入星星特效代码,分享给大家供大家参考。
具体实现代码如下:
<script language="JavaScript"><br> xL=8;<br> xH=xW=xR=xE=xMY=xMX=xWd=xHd=0;<br> xF=new Array();<br> xY=new Array();<br> xX=new Array();<br> xS=new Array();<br> xA=new Array();<br> xB=new Array();<br> ini=new Array();<br> document.write('<div id="sdiv" style="position:absolute;top:0px;left:0px"><div style="position:relative">');<br> for (i=0; i < xL; i++){<br> document.write('<div id="div" style="position:absolute;top:0;left:0;width:5px;height:5px;'+'font-size:10px;color:#ffffff">.</script>
}
document.write('');
function Set(){
for (i=0; i transfer(i)
xF[i]=xW/14;
}
}
function Assign(){
sdiv.style.top=document.body.scrollTop;
for (i=0; i xF[i]-=xS[i]*25;
if (xF[i] div[i].style.top =xY[i];
div[i].style.left=xX[i];
div[i].style.fontSize=xF[i];
}
}
function fly(){
xMY=window.document.body.clientHeight/2;
xMX=window.document.body.clientWidth/2;
xWd=Math.round(Math.random()*40+5);
xHd=Math.round(Math.random()*30+5);
for (i=0; i xY[i]=xA[i]+=(xMY-xA[i])*(xS[i]);
xX[i]=xB[i]+=(xMX-xB[i])*(xS[i]);
if ((xX[i] > xMX-xWd) && (xX[i] xMY-xHd) && (xY[i] transfer(i)
}
if ((xX[i]xW)||(xY[i]xH)){
xF[i]=xW/14;
}
}
Assign();
setTimeout('fly()',1);
}
function transfer(i){
xH=window.document.body.offsetHeight;
xW=window.document.body.offsetWidth;
xA[i]=Math.round(Math.random()*xH);
xB[i]=Math.round(Math.random()*xW);
xS[i]=Math.random()*0.05+0.05;
xR=Math.round(Math.random()*3);
xE=Math.round(Math.random()*50+50);
if (xR == 3) xB[i]=-xE;
if (xR == 2) xB[i]=xW+xE;
if (xR == 1) xA[i]=-xE;
if (xR == 0) xA[i]=xH;
}
Set();
fly();
希望本文所述对大家的javascript程序设计有所帮助











