无法输入2个单独的.js脚本

问题描述 投票:0回答:1

“clock.js”应该在网页的右上角放置一个实时时钟,“sparkles.js”每次移动时都会在光标下方放置火花。

<!DOCTYPE html>
<html>
  <head>
      <script src="/clock.js"></script>

         <link rel="shortcut icon" href="icon.ico">
    <link rel="apple-touch-icon" href="icon.ico"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Title</title>
    
      <script src="/sparkles.js"></script>
</head>
</html>

但是我只能让其中一个工作,我可以将整个代码放入两个(或仅一个)中,并且它只优先考虑其中一个。我可以根据需要将它们放置得尽可能远或靠近,但它仍然不起作用。是否压缩 js 文件中的 javascript 并不重要。我到处寻找答案但一无所获。

// <![CDATA[
var colour="#000000";
var clock_size=8;

var clok;
var cpos=0;
var newx=xmo=100;
var newy=ymo=30;
window.onload=function() { if (document.getElementById) {
  clok=document.createElement("div");
  clok.style.position="absolute";
  clok.appendChild(createDigit("dig0"));
  clok.appendChild(createDigit("dig1"));
  clok.appendChild(createColon());
  clok.appendChild(createDigit("dig2"));
  clok.appendChild(createDigit("dig3"));
  clok.appendChild(createColon("ms"));
  clok.appendChild(createDigit("dig4"));
  clok.appendChild(createDigit("dig5"));
  document.body.appendChild(clok);
  tick();
}}

var digit=new Array(247, 146, 221, 219, 186, 235, 239, 210, 255, 251);

function tick() {
  var now=new Date();
  var t=Math.floor(now.getTime()/500)%2;
  var i, j, k;
  var won=oo(now.getHours())+oo(now.getMinutes())+oo(now.getSeconds());
  for (i=0; i<6; i++) for (j=0; j<7; j++) {
    k=digit[won.substring(i, i+1)].toString(2).substring(j+1, j+2);
    document.getElementById("dig"+i+j).style.backgroundColor=(k==1)?colour:"transparent";
  }
  document.getElementById("mstop").style.backgroundColor=(t)?"transparent":colour;
  document.getElementById("msbot").style.backgroundColor=(t)?"transparent":colour;
  xmo+=Math.floor((newx-xmo)/4);
  clok.style.left=Math.round(xmo-(clock_size+2)*4)+"px";
  ymo+=Math.floor((newy-ymo)/4);
  clok.style.top=Math.round(ymo-clock_size*2.5)+"px";
  setTimeout("tick()", 40);
}


function scro() {
  var scro=0;
  if (document.body.scrollTop) scro=document.body.scrollTop;
  else if (document.documentElement && document.documentElement.scrollTop) scro=document.documentElement.scrollTop;
  return (scro);
}

function oo(o) { return(((o<10)?"0"+o:o).toString()); }

function createDigit(id) {
  var odiv=createDiv(0, cpos, clock_size+clock_size+2, clock_size+2, false);
  cpos+=clock_size+4;
  odiv.appendChild(createDiv(0, 1, 2, clock_size, id+"0"));
  odiv.appendChild(createDiv(1, 0, clock_size, 2, id+"1"));
  odiv.appendChild(createDiv(1, clock_size, clock_size, 2, id+"2"));
  odiv.appendChild(createDiv(clock_size, 1, 2, clock_size, id+"3"));
  odiv.appendChild(createDiv(clock_size+1, 0, clock_size, 2, id+"4"));
  odiv.appendChild(createDiv(clock_size+1, clock_size, clock_size, 2, id+"5"));
  odiv.appendChild(createDiv(clock_size+clock_size, 1, 2, clock_size, id+"6"));
  return (odiv);
}

function createColon(id) {
  var odiv=createDiv(0, cpos, clock_size+clock_size+2, 2, false);
  cpos+=4;
  var dot1=createDiv(4, 0, 3, 2, (id)?id+"top":false);
  dot1.style.backgroundColor=colour;
  odiv.appendChild(dot1);
  var dot2=createDiv(clock_size+clock_size-5, 0, 3, 2, (id)?id+"bot":false);
  dot2.style.backgroundColor=colour;
  odiv.appendChild(dot2);
  return (odiv);
}

function createDiv(top, left, height, width, id) {
  var div=document.createElement("div");
  div.style.position="absolute";
  div.style.top=top+"px";
  div.style.left=left+"px";
  div.style.height=height+"px";
  div.style.width=width+"px";
  div.style.overflow="hidden";
  if (id) div.setAttribute("id", id);
  return (div);
}
// ]]>

// <![CDATA[
var colour="#FFFFFF";
var sparkles=120;

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";
    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";
    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 (x!=ox || y!=oy) {
    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)+"px";
      star[c].style.clip="rect(0px, 5px, 5px, 0px)";
      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;
    if (stary[i]<shigh+sdown) {
      star[i].style.top=stary[i]+"px";
      starx[i]+=(i%5-2)/5;
      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";
    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;
    if (tinyy[i]<shigh+sdown) {
      tiny[i].style.top=tinyy[i]+"px";
      tinyx[i]+=(i%5-2)/5;
      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) {
  set_scroll();
  y=(e)?e.pageY:event.y+sdown;
  x=(e)?e.pageX:event.x+sleft;
}

function set_scroll() {
  if (typeof(self.pageYOffset)=="number") {
    sdown=self.pageYOffset;
    sleft=self.pageXOffset;
  }
  else if (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() {
  if (typeof(self.innerWidth)=="number") {
    swide=self.innerWidth;
    shigh=self.innerHeight;
  }
  else if (document.documentElement && document.documentElement.clientWidth) {
    swide=document.documentElement.clientWidth;
    shigh=document.documentElement.clientHeight;
  }
  else if (document.body.clientWidth) {
    swide=document.body.clientWidth;
    shigh=document.body.clientHeight;
  }
}

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";
  div.style.backgroundColor=colour;
  return (div);
}
// ]]>
<!DOCTYPE html>
<html>
  <head>
      <script src="/clock.js"></script>

         <link rel="shortcut icon" href="icon.ico">
    <link rel="apple-touch-icon" href="icon.ico"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Title</title>
    
      <script src="/sparkles.js"></script>
</head>
</html>

javascript html
1个回答
3
投票

好的,我解决了。只需首先使用 Sparkles 脚本,然后使用 Clock 脚本。而且我没有同时加载时钟和 Sparkles 函数,而是将时钟函数的加载时间更改为页面加载后 100 毫秒。之后就可以了。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>

  <div>
  <!-- sparkles script -->
  <script>
    var colour="random"; // "random" can be replaced with any valid colour ie: "red"...
    var sparkles=100;// increase of decrease for number of sparkles falling

    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();

    colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff')

    n = 10;
    y = 0;
    x = 0;
    n6=(document.getElementById&&!document.all);
    ns=(document.layers);
    ie=(document.all);
    d=(ns||ie)?'document.':'document.getElementById("';
    a=(ns||n6)?'':'all.';
    n6r=(n6)?'")':'';
    s=(ns)?'':'.style';

    if (ns){
      for (i = 0; i < n; i++)
        document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>');
    }

    if (ie)
      document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">');

    if (ie||n6){
      for (i = 0; i < n; i++)
        document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>');
    }

    if (ie)
      document.write('</div></div>');
    (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0;

    function Mouse(evnt){

      y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4;
      x = (ns||n6)?evnt.pageX+1:event.x+1;
    }

    (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse;

    function animate(){

      o=(ns||n6)?window.pageYOffset:0;

      if (ie)con.style.top=document.body.scrollTop + 'px';

      for (i = 0; i < n; i++){

        var temp1 = eval(d+a+"dots"+i+n6r+s);

        randcolours = colours[Math.floor(Math.random()*colours.length)];

        (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; 

        if (i < n-1){

          var temp2 = eval(d+a+"dots"+(i+1)+n6r+s);
          temp1.top = parseInt(temp2.top) + 'px';
          temp1.left = parseInt(temp2.left) + 'px';

        } 
        else{

          temp1.top = y+o + 'px';
          temp1.left = x + 'px';
        }
      }

      setTimeout("animate()",10);
    }

    animate();

    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]+")");
    }
  </script>
  </div>
  
  <!-- clock script -->
  <div>
  <script>    
    var colour="#000000";
    var clock_size=8;

    var clok;
    var cpos=0;
    var newx=xmo=100;
    var newy=ymo=30;
    setTimeout(function() { if (document.getElementById) {
      clok=document.createElement("div");
      clok.style.position="absolute";
      clok.appendChild(createDigit("dig0"));
      clok.appendChild(createDigit("dig1"));
      clok.appendChild(createColon());
      clok.appendChild(createDigit("dig2"));
      clok.appendChild(createDigit("dig3"));
      clok.appendChild(createColon("ms"));
      clok.appendChild(createDigit("dig4"));
      clok.appendChild(createDigit("dig5"));
      document.body.appendChild(clok);
      tick();
    }},100);

    var digit=new Array(247, 146, 221, 219, 186, 235, 239, 210, 255, 251);

    function tick() {
      var now=new Date();
      var t=Math.floor(now.getTime()/500)%2;
      var i, j, k;
      var won=oo(now.getHours())+oo(now.getMinutes())+oo(now.getSeconds());
      for (i=0; i<6; i++) for (j=0; j<7; j++) {
        k=digit[won.substring(i, i+1)].toString(2).substring(j+1, j+2);
        document.getElementById("dig"+i+j).style.backgroundColor=(k==1)?colour:"transparent";
      }
      document.getElementById("mstop").style.backgroundColor=(t)?"transparent":colour;
      document.getElementById("msbot").style.backgroundColor=(t)?"transparent":colour;
      xmo+=Math.floor((newx-xmo)/4);
      clok.style.left=Math.round(xmo-(clock_size+2)*4)+"px";
      ymo+=Math.floor((newy-ymo)/4);
      clok.style.top=Math.round(ymo-clock_size*2.5)+"px";
      setTimeout("tick()", 40);
    }


    function scro() {
      var scro=0;
      if (document.body.scrollTop) scro=document.body.scrollTop;
      else if (document.documentElement && document.documentElement.scrollTop) scro=document.documentElement.scrollTop;
      return (scro);
    }

    function oo(o) { return(((o<10)?"0"+o:o).toString()); }

    function createDigit(id) {
      var odiv=createDiv(0, cpos, clock_size+clock_size+2, clock_size+2, false);
      cpos+=clock_size+4;
      odiv.appendChild(createDiv(0, 1, 2, clock_size, id+"0"));
      odiv.appendChild(createDiv(1, 0, clock_size, 2, id+"1"));
      odiv.appendChild(createDiv(1, clock_size, clock_size, 2, id+"2"));
      odiv.appendChild(createDiv(clock_size, 1, 2, clock_size, id+"3"));
      odiv.appendChild(createDiv(clock_size+1, 0, clock_size, 2, id+"4"));
      odiv.appendChild(createDiv(clock_size+1, clock_size, clock_size, 2, id+"5"));
      odiv.appendChild(createDiv(clock_size+clock_size, 1, 2, clock_size, id+"6"));
      return (odiv);
    }

    function createColon(id) {
      var odiv=createDiv(0, cpos, clock_size+clock_size+2, 2, false);
      cpos+=4;
      var dot1=createDiv(4, 0, 3, 2, (id)?id+"top":false);
      dot1.style.backgroundColor=colour;
      odiv.appendChild(dot1);
      var dot2=createDiv(clock_size+clock_size-5, 0, 3, 2, (id)?id+"bot":false);
      dot2.style.backgroundColor=colour;
      odiv.appendChild(dot2);
      return (odiv);
    }

    function createDiv(top, left, height, width, id) {
      var div=document.createElement("div");
      div.style.position="absolute";
      div.style.top=top+"px";
      div.style.left=left+"px";
      div.style.height=height+"px";
      div.style.width=width+"px";
      div.style.overflow="hidden";
      if (id) div.setAttribute("id", id);
      return (div);
    }
  </script>
  </div>

</body>
</html>

在此版本中,不会有任何微小的火花。对于这一点,您不需要对这两个函数的运行时间进行任何区别。只需将 Sparkles 脚本放在前面,然后将 Clock 脚本放在后面即可。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>

  <div>
  <!-- sparkes script -->
  <script>
    var colour="random"; // "random" can be replaced with any valid colour ie: "red"...
    var sparkles=100;// increase of decrease for number of sparkles falling

    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();

    colours=new Array('#ff0000','#00ff00','#ffffff','#ff00ff','#ffa500','#ffff00','#00ff00','#ffffff','ff00ff')

    n = 10;
    y = 0;
    x = 0;
    n6=(document.getElementById&&!document.all);
    ns=(document.layers);
    ie=(document.all);
    d=(ns||ie)?'document.':'document.getElementById("';
    a=(ns||n6)?'':'all.';
    n6r=(n6)?'")':'';
    s=(ns)?'':'.style';

    if (ns){
      for (i = 0; i < n; i++)
        document.write('<layer name="dots'+i+'" top=0 left=0 width='+i/2+' height='+i/2+' bgcolor=#ff0000></layer>');
    }

    if (ie)
      document.write('<div id="con" style="position:absolute;top:0px;left:0px"><div style="position:relative">');

    if (ie||n6){
      for (i = 0; i < n; i++)
        document.write('<div id="dots'+i+'" style="position:absolute;top:0px;left:0px;width:'+i/2+'px;height:'+i/2+'px;background:#ff0000;font-size:'+i/2+'"></div>');
    }

    if (ie)
      document.write('</div></div>');
    (ns||n6)?window.captureEvents(Event.MOUSEMOVE):0;

    function Mouse(evnt){

      y = (ns||n6)?evnt.pageY+4 - window.pageYOffset:event.y+4;
      x = (ns||n6)?evnt.pageX+1:event.x+1;
    }

    (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse;

    function animate(){

      o=(ns||n6)?window.pageYOffset:0;

      if (ie)con.style.top=document.body.scrollTop + 'px';

      for (i = 0; i < n; i++){

        var temp1 = eval(d+a+"dots"+i+n6r+s);

        randcolours = colours[Math.floor(Math.random()*colours.length)];

        (ns)?temp1.bgColor = randcolours:temp1.background = randcolours; 

        if (i < n-1){

          var temp2 = eval(d+a+"dots"+(i+1)+n6r+s);
          temp1.top = parseInt(temp2.top) + 'px';
          temp1.left = parseInt(temp2.left) + 'px';

        } 
        else{

          temp1.top = y+o + 'px';
          temp1.left = x + 'px';
        }
      }

      setTimeout("animate()",10);
    }

    animate();

    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]+")");
    }
  </script>
  </div>
  
  <!-- clock script -->
  <div>
  <script>    
    var colour="#000000";
    var clock_size=8;

    var clok;
    var cpos=0;
    var newx=xmo=100;
    var newy=ymo=30;
    window.onload=function() { if (document.getElementById) {
      clok=document.createElement("div");
      clok.style.position="absolute";
      clok.appendChild(createDigit("dig0"));
      clok.appendChild(createDigit("dig1"));
      clok.appendChild(createColon());
      clok.appendChild(createDigit("dig2"));
      clok.appendChild(createDigit("dig3"));
      clok.appendChild(createColon("ms"));
      clok.appendChild(createDigit("dig4"));
      clok.appendChild(createDigit("dig5"));
      document.body.appendChild(clok);
      tick();
    }}

    var digit=new Array(247, 146, 221, 219, 186, 235, 239, 210, 255, 251);

    function tick() {
      var now=new Date();
      var t=Math.floor(now.getTime()/500)%2;
      var i, j, k;
      var won=oo(now.getHours())+oo(now.getMinutes())+oo(now.getSeconds());
      for (i=0; i<6; i++) for (j=0; j<7; j++) {
        k=digit[won.substring(i, i+1)].toString(2).substring(j+1, j+2);
        document.getElementById("dig"+i+j).style.backgroundColor=(k==1)?colour:"transparent";
      }
      document.getElementById("mstop").style.backgroundColor=(t)?"transparent":colour;
      document.getElementById("msbot").style.backgroundColor=(t)?"transparent":colour;
      xmo+=Math.floor((newx-xmo)/4);
      clok.style.left=Math.round(xmo-(clock_size+2)*4)+"px";
      ymo+=Math.floor((newy-ymo)/4);
      clok.style.top=Math.round(ymo-clock_size*2.5)+"px";
      setTimeout("tick()", 40);
    }


    function scro() {
      var scro=0;
      if (document.body.scrollTop) scro=document.body.scrollTop;
      else if (document.documentElement && document.documentElement.scrollTop) scro=document.documentElement.scrollTop;
      return (scro);
    }

    function oo(o) { return(((o<10)?"0"+o:o).toString()); }

    function createDigit(id) {
      var odiv=createDiv(0, cpos, clock_size+clock_size+2, clock_size+2, false);
      cpos+=clock_size+4;
      odiv.appendChild(createDiv(0, 1, 2, clock_size, id+"0"));
      odiv.appendChild(createDiv(1, 0, clock_size, 2, id+"1"));
      odiv.appendChild(createDiv(1, clock_size, clock_size, 2, id+"2"));
      odiv.appendChild(createDiv(clock_size, 1, 2, clock_size, id+"3"));
      odiv.appendChild(createDiv(clock_size+1, 0, clock_size, 2, id+"4"));
      odiv.appendChild(createDiv(clock_size+1, clock_size, clock_size, 2, id+"5"));
      odiv.appendChild(createDiv(clock_size+clock_size, 1, 2, clock_size, id+"6"));
      return (odiv);
    }

    function createColon(id) {
      var odiv=createDiv(0, cpos, clock_size+clock_size+2, 2, false);
      cpos+=4;
      var dot1=createDiv(4, 0, 3, 2, (id)?id+"top":false);
      dot1.style.backgroundColor=colour;
      odiv.appendChild(dot1);
      var dot2=createDiv(clock_size+clock_size-5, 0, 3, 2, (id)?id+"bot":false);
      dot2.style.backgroundColor=colour;
      odiv.appendChild(dot2);
      return (odiv);
    }

    function createDiv(top, left, height, width, id) {
      var div=document.createElement("div");
      div.style.position="absolute";
      div.style.top=top+"px";
      div.style.left=left+"px";
      div.style.height=height+"px";
      div.style.width=width+"px";
      div.style.overflow="hidden";
      if (id) div.setAttribute("id", id);
      return (div);
    }
  </script>
  </div>

</body>
</html>

© www.soinside.com 2019 - 2024. All rights reserved.