7-9.htm

来自「JScript网页特效,包含很多的实现网页特效的方法.」· HTM 代码 · 共 94 行

HTM
94
字号
<html>
<head>
<title>§7.9 飘舞的雪花</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" text="#000000" onLoad="fall()">
<script language="JavaScript">
<!-- 

Amount=13;           //设置页面中的雪花数目

grphcs=new Array(5)  //定义雪花的图片,定义了5种
grphcs[0]="snow1.gif"
grphcs[1]="snow2.gif"
grphcs[2]="snow3.gif"
grphcs[3]="snow4.gif"
grphcs[4]="snow5.gif"

Ypos=new Array();    //用于存储每朵雪花的x位置数组
Xpos=new Array();    //用于存储每朵雪花的y位置数组
Speed=new Array();   //用于控制每朵雪花的移动速度
Step=new Array();    //用于控制每朵雪花的移动的中间变量
Cstep=new Array();   
ns=(document.layers)?1:0;
if (ns)
{
  for (i = 0; i < Amount; i++)
  {
    var P=Math.floor(Math.random()*grphcs.length);
    rndPic=grphcs[P];
    document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+rndPic+"></LAYER>");
  }
}
else
{
  document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  for (i = 0; i < Amount; i++)
  {
    var P=Math.floor(Math.random()*grphcs.length);
    rndPic=grphcs[P];
    document.write('<img id="si" src="'+rndPic+'" style="position:absolute;top:0px;left:0px">');
  }
  document.write('</div></div>');
}
WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
for (i=0; i < Amount; i++)
{                                                                
  Ypos[i] = Math.round(Math.random()*WinHeight);
  Xpos[i] = Math.round(Math.random()*WinWidth);
  Speed[i]= Math.random()*5+1.5;
  Cstep[i]=0;
  Step[i]=Math.random()*0.1+0.05;
}

function fall()
{
  var WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
  var WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
  var hscrll=(document.layers)?window.pageYOffset:document.body.scrollTop;
  var wscrll=(document.layers)?window.pageXOffset:document.body.scrollLeft;
  for (i=0; i < Amount; i++)
  {
    sy = Speed[i]*1.5;
    sx = Speed[i]*Math.cos(Cstep[i]);
    Ypos[i]+=sy;
    Xpos[i]+=sx; 
    if (Ypos[i] > WinHeight)
    {
      Ypos[i]=-10;
      Xpos[i]=Math.round(Math.random()*WinWidth);
      Speed[i]=Math.random()*5+1.5;
    }
    if (ns)
    {
      document.layers['sn'+i].left=Xpos[i]+wscrll;
      document.layers['sn'+i].top=Ypos[i]+hscrll;
    }
    else
    {
      si[i].style.pixelLeft=Xpos[i]+wscrll;
      si[i].style.pixelTop=Ypos[i]+hscrll;
    } 
    Cstep[i]+=Step[i];
  }
  setTimeout('fall()',10);
}
//-->
</script>

</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?