<script type="text/javascript"> 

//Url: http://bbs.51js.com/thread-61646-1-1.html 

//Author: 风云突变 

//Modify: 枫岩 

var act; 

function over(s,nMax){ 

  var obj=document.getElementById(s); 

  var h = parseInt(obj.offsetHeight); 

  if (h < nMax){ 

    obj.style.height = (h + 2)+"px"; 

    clearTimeout(act); 

    act = setTimeout("over('"+s+"',"+nMax+")", 10); 

  } 

} 

function out(s,nMin){ 

  var obj=document.getElementById(s); 

  var h = parseInt(obj.offsetHeight); 

  if (h > nMin){ 

    obj.style.height = (h - 2)+"px"; 

    clearTimeout(act); 

    act = setTimeout("out('"+s+"',"+nMin+")", 10); 

  } 

} 

</script> 

<div id="mytd" onmouseover="over('mytd',200);" onmouseout="out('mytd',30);" style="background:#eee;">代码实例:层的滑动展开/折叠</div>无忧网友 fangxiao9159 再次优化后:


<script type="text/javascript"> 

var intervalId = null; 

function move(id,state){ 

  var obj = document.getElementById(id); 

  if(intervalId != null)  

    window.clearInterval(intervalId); 

  function change(){ 

   var h = parseInt(obj.offsetHeight); 

   obj.style.height = (state == "down") ? (h + 2) : (h - 2); 

  } 

  intervalId = window.setInterval(change,10); 

} 

</script> 

<table border="1" cellpadding="0" cellspacing="0" id="mytd" onmouseover="move('mytd','down');" onmouseout="move('mytd','out');"> 

<tr><td>无忧脚本 - 风云突变</td></tr></table>