首页 > 编程 > JavaScript > 正文

JS+CSS实现DIV层的展开、收缩效果

2019-11-20 10:40:06
字体:
来源:转载
供稿:网友

本文为大家分享的第一个实例:JS控制DIV层的展开、收缩效果。

<html><head><title>CSS+JS实现一个DIV层的展开/折叠效果</title><style>* { margin:0; padding:0;}body { text-align:center; font:75% Verdana, Arial, Helvetica, sans-serif;}h1 { font:125% Arial, Helvetica, sans-serif; text-align:left; font-weight:bolder; background:#555; padding:3px; display:block; color:#99CC00}.class1 { width:40%; background:#CCCCCC; position:relative; margin:0 auto; padding:5px;}span { position:absolute; right:10px; top:8px; cursor:pointer; color:yellow;}p { text-align:left; line-height:20px; background:#555; padding:3px; margin-top:5px; color:#99CC00}#class1content { height:256px;overflow:hidden}</style><script>function $(element){return element = document.getElementById(element);}function $D(){var d=$('class1content');var h=d.offsetHeight;var maxh=300;function dmove(){h+=50; //层展开速度if(h>=maxh){d.style.height='300px';clearInterval(iIntervalId);}else{d.style.display='block';d.style.height=h+'px';}}iIntervalId=setInterval(dmove,2);}function $D2(){var d=$('class1content');var h=d.offsetHeight;var maxh=300;function dmove(){h-=50;//层收缩速度if(h<=0){d.style.display='none';clearInterval(iIntervalId);}else{d.style.height=h+'px';}}iIntervalId=setInterval(dmove,2);}function $use(){var d=$('class1content');var sb=$('stateBut');if(d.style.display=='none'){$D();sb.innerHTML='收缩';}else{$D2();sb.innerHTML='展开';}}</script></head><body><div class="class1"><span id="stateBut" onclick="$use()">收缩</span><p id="class1content">武林网。</p></div></body>

效果图:

第二个实例:js 控制展开折叠

<html><head>  <meta http-equiv="Content-Type" content="text/html;charset=gb2312">  <title>Title</title></head><body><!-- js 控制 展开 隐藏div --><img src="image/down.png" onclick="test(this)">  <!--this 指 img 对象 --><div id="div2" style="border:1px solid #ccc; width:300px; height:200px; display: block;">  (1)每个HTML标记都有事件句柄属性。onClick是HTML标记属性,不分大小写。  (2)HTML标记对应的元素对象也具有事件句柄属性,这个属性必须全小写,因JS区分大小写</div></body></html><script type="text/javascript">function test(obj){  var div1=document.getElementById("div2");  if(div1.style.display=="block"){    div1.style.display="none";    obj.src="image/up.png";  }else{    div1.style.display="block";    obj.src="image/down.png";  }}</script>

以上就是本文的全部内容,希望对大家的学习有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表