Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Fireworks</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
#sparks div {
position:absolute;
visibility:hidden;
font-family:arial black, sans-serif;
color:white;
font-size:125%;
}
body {
background-color:black;
}
</style>
<script type="text/javascript">
var fireworks={
timeout: 70, // = fireworks speed, larger number = slower speed (suggested 70)
colors:['#ff4433', '#77ff77', 'yellow', 'hotpink', '#dddddd', 'lightblue'],
method: 'onload',
sparksAflyin : 0,
totalSparks : 0,
sparksOn : 1,
iecompattest:function (){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
},
mouseDown:function (e) {
var f=fireworks, e=e&&e[0]? e : e? e : window.event;
if (f.sparksOn) {
if(e)
var x = e&&e[0]? e[0] : typeof e.pageX=='number'? e.pageX : e.x+f.iecompattest().scrollLeft,
y = e&&e[1]? e[1] : typeof e.pageY=='number'? e.pageY : e.y+f.iecompattest().scrollTop;
else
var x=Math.random()*(f.get_dims()[0]-f.get_dims()[0]/3)+f.get_dims()[0]/6+f.get_dims()[2],
y=Math.random()*(f.get_dims()[1]/3)+200+f.get_dims()[3];
if (!f.sparksAflyin||(e&&e[0])) {
f.mousex = x, f.mousey = y;
f.sparksAflyin = 1;
f.totalSparks = 0;
for(var i = 0, colr=f.colors[Math.floor(Math.random()*(f.colors.length+1))]; i < 10; i++)
document.getElementById('sDiv'+i).style.visibility = 'visible',
document.getElementById('sDiv'+i).style.color = colr? colr : f.colors[Math.floor(Math.random()*f.colors.length)],
f.moveTo(i,0,!(e&&e[0]));
if (!(e&&e[0])&&(f.tog=!f.tog))
f.timer=setTimeout(function(){new f.mouseDown([x,y]);},Math.random()*300);
}
/*else
e.timer=setTimeout(function(){new f.mouseDown([x,y]);},10);*/
}
},
get_dims:function(){
var f=fireworks, ww=window.innerWidth?window.innerWidth:f.iecompattest().offsetWidth,
wh=window.innerHeight?window.innerHeight:f.iecompattest().offsetHeight,
px=typeof pageXOffset=='number'?pageXOffset:f.iecompattest().scrollLeft,
py=typeof pageYOffset=='number'?pageYOffset:f.iecompattest().scrollTop;
return [ww,wh,px,py];
},
moveTo:function (i,j){
var f=fireworks, j=j, el=document.getElementById('sDiv'+i);
if (j < f['a'+i]['x'].length) {
var xm=!arguments[2]||Math.round(Math.random())?1:-1,
tempx = xm*f['a'+i]['x'][j]+f.mousex,
tempy = f['a'+i]['y'][j++]+f.mousey,
ww=window.innerWidth?window.innerWidth:f.iecompattest().offsetWidth,
wh=window.innerHeight?window.innerHeight:f.iecompattest().offsetHeight,
px=typeof pageXOffset=='number'?pageXOffset:f.iecompattest().scrollLeft,
py=typeof pageYOffset=='number'?pageYOffset:f.iecompattest().scrollTop;
tempx = tempx+el.offsetWidth > ww+px? ww+px-el.offsetWidth : tempx;
tempy = tempy+el.offsetHeight > wh+py? wh+py-el.offsetHeight : tempy;
el.style.left = tempx+'px';
el.style.top = tempy+'px';
setTimeout(function(){f.moveTo(i,j);}, f.timeout)
}
else {
el.style.visibility = '';
f.totalSparks++;
}
if (f.totalSparks == 10) {
f.sparksAflyin = 0;
f.totalSparks = 0;
if (f.method=='onload')
setTimeout('fireworks.mouseDown()', Math.max(Math.random()*3000, 1500));
}
},
a0:{x:[20,20,10,0,0,0,0,0,0,0,0,0],
y:[-20,-40,-60,-80,-60,-40,-20,0,20,40,60,80]},
a1:{x:[20,20,17,36,60,78,90,92,93,98,108,120,133,152,181],
y:[-20,-20,-33,-38,-38,-27,-2,25,51,84,113,141,162,212,253]},
a2:{x:[20,20,2,3,4,5,6,7,8,9,10,12,13,15,18],
y:[-20,-20,-33,-38,-38,-27,-2,25,51,84,113,141,162,212,253]},
a3:{x:[-20,-20,-2,-1,7,10,18,35,60,102,94,94,93,97,108,111,117,127],
y:[-20,-25,-64,-89,-104,-150,-173,-197,-213,-199,-151,-101,-66,-17,27,87,140,189]},
a4:{x:[-20,-20,-10,-39,-30,-69,-64,-138,-154,-200,-181,-209,-191,-207,-203,-213,-202,-221,-211],
y:[-20,-20,-28,-51,-79,-100,-135,-154,-193,-183,-149,-134,-89,-60,8,51,107,157,201]},
a5:{x:[-20,-29,-51,-72,-105,-133,-164,-189,-209,-229,-247,-270,-279,-282,-283,-283,-285,-286,-288],
y:[-20,-55,-86,-116,-154,-183,-205,-217,-217,-198,-169,-120,-44,-8,40,87,144,190,248]},
a6:{x:[-20,-20,-7,14,44,79,143,186,217,226,234,244,250,259,265,274],
y:[-20,-21,-72,-113,-139,-166,-188,-181,-126,-68,-3,54,134,187,215,257]},
a7:{x:[20,20,-3,-9,-13,-27,-33,-44,-54,-66,-77,-95,-107,-136,-150,-160,-164,-168,-171,-172,-172,-176,-175],
y:[-20,-26,-43,-63,-89,-116,-145,-169,-201,-222,-240,-253,-254,-245,-220,-195,-160,-124,-81,-53,-26,19,68]},
a8:{x:[-20,20,-35,39,0,45,-1,24,-15,14,-20,35,-18,38,-11,16,49,64,81,93,100,103,109],
y:[-20,-20,-32,-42,-62,-76,-89,-107,-132,-147,-173,-180,-192,-209,-236,-193,-119,-73,-24,51,95,130,188]},
a9:{x:[-20,-51,-89,-110,-165,-191,-228,-240,-259,-271,-277,-281,-287],
y:[-20,-20,-35,-37,-34,-16,10,47,105,150,189,227,273]}};
if (document.getElementById)
if (fireworks.method=='onclick')
document.onmousedown = fireworks.mouseDown;
else if (fireworks.method=='onload')
onload=function(){
setTimeout('fireworks.mouseDown()', 10);
}
</script>
</head>
<body>
<div id="sparks">
<div id="sDiv0">*</div>
<div id="sDiv1">*</div>
<div id="sDiv2">*</div>
<div id="sDiv3">*</div>
<div id="sDiv4">*</div>
<div id="sDiv5">*</div>
<div id="sDiv6">*</div>
<div id="sDiv7">*</div>
<div id="sDiv8">*</div>
<div id="sDiv9">*</div>
</div>
</body>
</html>
Bookmarks