div显示隐藏

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">

</HEAD>

<BODY>
<span οnclick="ShowHide('${item.roomid}')" style="cursor=hand">点击</span>
<div id="${item.roomid}" style="display:block">
<table width="200" border="1">
  <tr>
    <td>&nbsp;aaaaaaaaaa</td>
    <td>&nbsp;bbbb</td>
  </tr>
  <tr>
    <td>&nbsp;ccccccc</td>
    <td>&nbsp;dddddddd</td>
  </tr>
  <tr>
    <td>&nbsp;eeeeee</td>
    <td>&nbsp;fffffffff</td>
  </tr>
</table>
</div>
<table width="200" border="1">
  <tr>
    <td>&nbsp;aaaaaaaaaa</td>
    <td>&nbsp;bbbb</td>
  </tr>
  <tr>
    <td>&nbsp;ccccccc</td>
    <td>&nbsp;dddddddd</td>
  </tr>
  <tr>
    <td>&nbsp;eeeeee</td>
    <td>&nbsp;fffffffff</td>
  </tr>
</table>
<script>
  //取得ID节点
function $(id){return(document.getElementById(id))}
//取得实际高度
function coculateOffset(ele){
    var node = $(ele);
    var orignalHeight = node.style.height;
    var orignalDisplay = node.style.display;
    node.style.height = "";
    node.style.display = "block";
    var h = node.offsetHeight;
    node.style.height = orignalHeight;
    node.style.display = orignalDisplay;
    return(h);
}
//显示元素
function showEle(ele){
    var h = coculateOffset(ele)
    var i = 1;
    var t = setInterval(function(){
        i += i;
        $(ele).style.height = i + "px";
  $(ele).style.display = ""; 
        if( i > h/2){
            $(ele).style.height = h + "px";
            clearInterval(t);
        }
    },35)
}
//隐藏元素
function hideEle(ele){
    var h = coculateOffset(ele);
    var t = setInterval(function(){
        if(h > 2){
            h = h/2;
        }else{
            h = 0;
            clearInterval(t);
            $(ele).style.display="none";
        }
        $(ele).style.height = h + "px";
    },60)
}
//判断显隐
function ShowHide(ele){
    var currentHeight = $(ele).style.display == "none" ? 0 : $(ele).offsetHeight;
 $(ele).style.overflow = "hidden";
    if(currentHeight > 0){
        hideEle(ele);
    }else{
        showEle(ele);
    }
}
</script>
</BODY>
</HTML>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值