var sparksOn = true;
var speed = 50;
var power = 5;
// Don't change these values -----
var ns=(document.layers);
var ie=(document.all);
var sparksAflyin = false;
var allDivs = new Array(10);
var totalSparks = 0;
// -------------------------------
function initShootingStars(){
if(!ns && !ie){
sparksOn = false;
return;
}
document.onmousedown = mouseDown;
if (ns)
document.captureEvents(Event.MOUSEDOWN);
for(dNum=0; dNum<14; ++dNum){
if(ie)
allDivs[dNum]=eval('document.all.sDiv'+dNum+'.style');
else
allDivs[dNum]=eval('document.layers["sDiv'+dNum+'"]');
}
}
function mouseDown(e){
if(sparksOn){
var mousex=(ns)?e.pageX:event.x+document.body.scrollLeft;
var mousey=(ns)?e.pageY:event.y+document.body.scrollTop;
if(!sparksAflyin){
sparksAflyin=true;
totalSparks=0;
for(var spark=0;spark<=13;spark++){
dx=Math.round(Math.random()*50);
dy=Math.round(Math.random()*50);
moveTo(spark,mousex,mousey,dx,dy);
}
}
}
}
function moveTo(i,tempx,tempy,dx,dy){
if(ie){
if(tempy+80>(document.body.offsetHeight+document.body.scrollTop))
tempy=document.body.offsetHeight+document.body.scrollTop-80;
if(tempx+80>(document.body.offsetWidth+document.body.scrollLeft))
tempx=document.body.offsetWidth+document.body.scrollLeft-80;
}
if(tempx>-50&&tempy>-50){
tempx+=dx;tempy+=dy;
allDivs[i].left=tempx;
allDivs[i].top=tempy;
dx-=power;dy-=power;
setTimeout("moveTo("+i+","+tempx+","+tempy+","+dx+","+dy+")",speed)
}
else
++totalSparks
if(totalSparks==14){
sparksAflyin=false;
totalSparks=0;
}
}
function toggleSparks(){
sparksOn = (sparksOn)? 0:1;
}
onload=initShootingStars
