123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 |
- // <![CDATA[
- var colour="random"; // in addition to "random" can be set to any valid colour eg "#f0f" or "red"
- var sparkles=50;
-
- /****************************
- * Tinkerbell Magic Sparkle *
- *(c)2005-13 mf2fm web-design*
- * http://www.mf2fm.com/rv *
- * DON'T EDIT BELOW THIS BOX *
- ****************************/
- var x=ox=400;
- var y=oy=300;
- var swide=800;
- var shigh=600;
- var sleft=sdown=0;
- var tiny=new Array();
- var star=new Array();
- var starv=new Array();
- var starx=new Array();
- var stary=new Array();
- var tinyx=new Array();
- var tinyy=new Array();
- var tinyv=new Array();
-
- window.onload=function() { if (document.getElementById) {
- var i, rats, rlef, rdow;
- for (var i=0; i<sparkles; i++) {
- var rats=createDiv(3, 3);
- rats.style.visibility="hidden";
- rats.style.zIndex="999";
- document.body.appendChild(tiny[i]=rats);
- starv[i]=0;
- tinyv[i]=0;
- var rats=createDiv(5, 5);
- rats.style.backgroundColor="transparent";
- rats.style.visibility="hidden";
- rats.style.zIndex="999";
- var rlef=createDiv(1, 5);
- var rdow=createDiv(5, 1);
- rats.appendChild(rlef);
- rats.appendChild(rdow);
- rlef.style.top="2px";
- rlef.style.left="0px";
- rdow.style.top="0px";
- rdow.style.left="2px";
- document.body.appendChild(star[i]=rats);
- }
- set_width();
- sparkle();
- }}
-
- function sparkle() {
- var c;
- if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) {
- ox=x;
- oy=y;
- for (c=0; c<sparkles; c++) if (!starv[c]) {
- star[c].style.left=(starx[c]=x)+"px";
- star[c].style.top=(stary[c]=y+1)+"px";
- star[c].style.clip="rect(0px, 5px, 5px, 0px)";
- star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour;
- star[c].style.visibility="visible";
- starv[c]=50;
- break;
- }
- }
- for (c=0; c<sparkles; c++) {
- if (starv[c]) update_star(c);
- if (tinyv[c]) update_tiny(c);
- }
- setTimeout("sparkle()", 40);
- }
-
- function update_star(i) {
- if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)";
- if (starv[i]) {
- stary[i]+=1+Math.random()*3;
- starx[i]+=(i%5-2)/5;
- if (stary[i]<shigh+sdown) {
- star[i].style.top=stary[i]+"px";
- star[i].style.left=starx[i]+"px";
- }
- else {
- star[i].style.visibility="hidden";
- starv[i]=0;
- return;
- }
- }
- else {
- tinyv[i]=50;
- tiny[i].style.top=(tinyy[i]=stary[i])+"px";
- tiny[i].style.left=(tinyx[i]=starx[i])+"px";
- tiny[i].style.width="2px";
- tiny[i].style.height="2px";
- tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor;
- star[i].style.visibility="hidden";
- tiny[i].style.visibility="visible";
- }
- }
-
- function update_tiny(i) {
- if (--tinyv[i]==25) {
- tiny[i].style.width="1px";
- tiny[i].style.height="1px";
- }
- if (tinyv[i]) {
- tinyy[i]+=1+Math.random()*3;
- tinyx[i]+=(i%5-2)/5;
- if (tinyy[i]<shigh+sdown) {
- tiny[i].style.top=tinyy[i]+"px";
- tiny[i].style.left=tinyx[i]+"px";
- }
- else {
- tiny[i].style.visibility="hidden";
- tinyv[i]=0;
- return;
- }
- }
- else tiny[i].style.visibility="hidden";
- }
-
- document.onmousemove=mouse;
- function mouse(e) {
- if (e) {
- y=e.pageY;
- x=e.pageX;
- }
- else {
- set_scroll();
- y=event.y+sdown;
- x=event.x+sleft;
- }
- }
-
- window.onscroll=set_scroll;
- function set_scroll() {
- if (typeof(self.pageYOffset)=='number') {
- sdown=self.pageYOffset;
- sleft=self.pageXOffset;
- }
- else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) {
- sdown=document.body.scrollTop;
- sleft=document.body.scrollLeft;
- }
- else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
- sleft=document.documentElement.scrollLeft;
- sdown=document.documentElement.scrollTop;
- }
- else {
- sdown=0;
- sleft=0;
- }
- }
-
- window.onresize=set_width;
- function set_width() {
- var sw_min=999999;
- var sh_min=999999;
- if (document.documentElement && document.documentElement.clientWidth) {
- if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth;
- if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight;
- }
- if (typeof(self.innerWidth)=='number' && self.innerWidth) {
- if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth;
- if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight;
- }
- if (document.body.clientWidth) {
- if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth;
- if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight;
- }
- if (sw_min==999999 || sh_min==999999) {
- sw_min=800;
- sh_min=600;
- }
- swide=sw_min;
- shigh=sh_min;
- }
-
- function createDiv(height, width) {
- var div=document.createElement("div");
- div.style.position="absolute";
- div.style.height=height+"px";
- div.style.width=width+"px";
- div.style.overflow="hidden";
- return (div);
- }
-
- function newColour() {
- var c=new Array();
- c[0]=255;
- c[1]=Math.floor(Math.random()*256);
- c[2]=Math.floor(Math.random()*(256-c[1]/2));
- c.sort(function(){return (0.5 - Math.random());});
- return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")");
- }
- // ]]>
|