淡入淡出DIV层成效

淡入淡出DIV层效果
<html>
 <head>
<script type="text/javascript"> 
var t=null         //函数内临时时间对象变量(作用范围:全局变量) 
function disdiv(divid,type){ 
//Created by 刘何明 
//At 2009-12-09 
//淡入淡出DIV层效果 
//参数说明 divid=>要执行操作的层的ID值,多个ID用","分割 type=>"open"?显示层 "close"?隐藏层 
if(t){ 
window.setTimeout(function(){disdiv(divid,type);},10); //使同步进行的淡化效果进入排队系统,直至上个操作完毕后 自动执行本次效果 
 return false; 
}   
var i=(type=="close"?1:0);    //对页面动作进行定义 
var s=0.1;        //保留数据,请勿修改 
var speed=0.1       //默认渐隐的速度 0.2 (数值越小变化越慢越精细,同时占用系统资源也更多) 
var tmpo 
var tmpindex=0 
//----------------开始对divid数列进行处理以及多个对象赋值---------------- 
var o = new Array(); 
if(divid.indexOf(",")==-1){ 
 var dividArray = [divid]; 
}else{ 
 var dividArray = divid.split(","); 
} 
//判断是否重复执行并对符合要求的DIV进行数组化整合 
for(j=0;j<dividArray.length;j++){ 
 tmpo = window.document.all[dividArray[j]] 
 if((type=="open" && tmpo.style.display!="") || (type=="close" && tmpo.style.display!="none")){ 
  o[tmpindex] = window.document.all[dividArray[j]] 
  tmpindex++ 
 }           
} 
//----------------结束对divid数列进行处理以及多个对象赋值---------------- 
if(o.length==0) return false;  //如果所有参数元素都重复执行,则直接退出,不占用系统资源 
 
      for(j=0;j<o.length;j++){ 
       if(type=="open"){o[j].style.display=""} //首先把层显示出来 
      } 
      t=setInterval(function(){ 
 if((i<0 && type=="close") || (i>1 && type=="open")){ 
  //判断结束start 
  window.clearInterval(t); 
  for(j=0;j<o.length;j++){ 
   o[j].filters[0].opacity = (type=="close"?0:100) 
   if(type=="close"){o[j].style.display="none"} //消失后把层隐藏起来 
  } 
  t=null; 
  return false; 
  //判断结束end 
 }else{ 
  //计算层的透明度 
    i+=s; s=i<0?speed:(i>1?-speed:s); 
    for(j=0;j<o.length;j++){ 
      if(o[j].filters) o[j].filters[0].opacity=i*100; 
      else o[j].style.opacity=i; 
     } 
    }      
},1); 
} 
</script>
</head>
<body>
 <table cellspacing="0" cellpadding="0">
  <tr>
   <td width=220>
    <input type=button value="全部显示"
     onclick="disdiv('bodydivleft1,bodydivright1','open');">
    <input type=button value="全部关闭"
     onclick="disdiv('bodydivleft1,bodydivright1','close')">
    <input type=button value="显示左边"
     onclick="disdiv('bodydivleft1','open');">
    <input type=button value="关闭左边"
     onclick="disdiv('bodydivleft1','close')">
    <input type=button value="显示右边"
     onclick="disdiv('bodydivright1','open');">
    <input type=button value="关闭右边"
     onclick="disdiv('bodydivright1','close');">
    <input type=button value="全部关闭然后显示右边"
     onclick="disdiv('bodydivleft1,bodydivright1','close');disdiv('bodydivright1','open')">

    <div align="center">
     <table border="0" width="1024" height=500 cellspacing="0"
      cellpadding="0">
      <tr>
       <td width="50%">
        <!--左边DIV区域-->
    <div id="bodydivleft1"
     style="z-index: 101; left: 0px; width: 100%; top: 0px; height: 100%; background: #CCCCCC; filter: Alpha(Opacity =         100)">
     我是左边
    </div>
   </td>
   <td width="50%" valign="top">
    <!--右边DIV区域-->
    <div id="bodydivright1"
     style="z-index: 101; left: 0px; width: 100%; top: 0px; height: 100%; background: #CCCCCC; filter: Alpha(Opacity =         100)">
     我是右边
    </div>
   </td>
  </tr>
 </table>
</div>
</body>
</html>