js实现绿白相间竖向网页百叶窗动画切换效果

  本文实例讲述了js实现绿白相间竖向网页百叶窗动画切换效果。分享给大家供大家参考。具体分析如下:

  前面我们讲解了一个网页百叶窗切换动画效果,不过是横向百叶窗,这个是竖向百叶窗,代码基本一样:

  

复制代码 代码如下:
<html>

  <head>

  <title>百叶窗页面切换效果</title>

  <style>

  <!--

  .intro{

  position:absolute;

  left:0;

  top:0;

  layer-background-color:green;

  background-color:green;

  border:0.1px solid green

  }

  -->

  </style>

  </head>

  <body>

  <div id="i1" class="intro"></div><div id="i2" class="intro"></div><div id="i3"

  class="intro"></div><div id="i4" class="intro"></div><div id="i5" class="intro"></div><div

  id="i6" class="intro"></div><div id="i7" class="intro"></div><div id="i8" class="intro"></div>

  <script language="JavaScript1.2">

  var speed=20

  var temp=new Array()

  var temp2=new Array()

  if (document.layers){

  for (i=1;i<=8;i++){

  temp[i]=eval("document.i"+i+".clip")

  temp2[i]=eval("document.i"+i)

  temp[i].width=window.innerWidth/8-0.3

  temp[i].height=window.innerHeight

  temp2[i].left=(i-1)*temp[i].width

  }

  }

  else if (document.all){

  var clipbottom=document.body.offsetHeight,cliptop=0

  for (i=1;i<=8;i++){

  temp[i]=eval("document.all.i"+i+".style")

  temp[i].width=document.body.clientWidth/8

  temp[i].height=document.body.offsetHeight

  temp[i].left=(i-1)*parseInt(temp[i].width)

  }

  }

  function openit(){

  window.scrollTo(0,0)

  if (document.layers){

  for (i=1;i<=8;i=i+2)

  temp[i].bottom-=speed

  for (i=2;i<=8;i=i+2)

  temp[i].top+=speed

  if (temp[2].top>window.innerHeight)

  clearInterval(stopit)

  }

  else if (document.all){

  clipbottom-=speed

  for (i=1;i<=8;i=i+2){

  temp[i].clip="rect(0 auto+"+clipbottom+" 0)"

  }

  cliptop+=speed

  for (i=2;i<=8;i=i+2){

  temp[i].clip="rect("+cliptop+" auto auto)"

  }

  if (clipbottom<=0)

  clearInterval(stopit)

  }

  }

  function gogo(){

  stopit=setInterval("openit()",100)

  }

  gogo()

  </script>

  </body>

  </html>

  希望本文所述对大家的javascript程序设计有所帮助。