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


Posted in Javascript onJanuary 28, 2016

本文为大家分享的第一个实例: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+CSS实现DIV层的展开、收缩效果

第二个实例: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>

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

Javascript 相关文章推荐
很可爱的输入框
Aug 03 Javascript
页面调用单个swf文件,嵌套出多个方法。
Nov 21 Javascript
编写高效jQuery代码的4个原则和5个技巧
Apr 24 Javascript
JavaScript数组各种常见用法实例分析
Aug 04 Javascript
ionic由于使用了header和subheader导致被遮挡的问题的两种解决方法
Sep 22 Javascript
Require.js的基本用法详解
Jul 03 Javascript
微信小程序实现点击按钮移动view标签的位置功能示例【附demo源码下载】
Dec 06 Javascript
VUE Error: getaddrinfo ENOTFOUND localhost
May 03 Javascript
Vue项目中使用better-scroll实现菜单映射功能方法
Sep 11 Javascript
Vue.extend 编程式插入组件的实现
Nov 18 Javascript
JS中==、===你分清楚了吗
Mar 04 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
May 28 Javascript
js+canvas绘制五角星的方法
Jan 28 #Javascript
js+html5实现的自由落体运动效果代码
Jan 28 #Javascript
js判断上传文件后缀名是否合法
Jan 28 #Javascript
Angular中$compile源码分析
Jan 28 #Javascript
实例讲解JS中setTimeout()的用法
Jan 28 #Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 #Javascript
jQuery+canvas实现简单的球体斜抛及颜色动态变换效果
Jan 28 #Javascript
You might like
php中计算时间差的几种方法
2009/12/31 PHP
php代码架构的八点注意事项
2016/01/25 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
2016/07/25 PHP
PHP中call_user_func_array回调函数的用法示例
2016/11/26 PHP
封装了一个js图片轮换效果的函数
2011/09/28 Javascript
JavaScript中的关键字&quot;VAR&quot;使用详解 分享
2013/07/31 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
浅谈javascript的调试
2015/01/28 Javascript
jQuery入门之层次选择器实例简析
2015/12/11 Javascript
js实现select二级联动下拉菜单
2020/04/17 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
微信小程序 for 循环详解
2016/10/09 Javascript
js精确的加减乘除实例
2017/11/14 Javascript
基于webpack.config.js 参数详解
2018/03/20 Javascript
JS获取指定月份的天数两种实现方法
2018/06/22 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
2019/03/11 Javascript
node使用async_hooks模块进行请求追踪
2021/01/28 Javascript
python实现稀疏矩阵示例代码
2017/06/09 Python
Python简单I/O操作示例
2019/03/18 Python
如何通过python画loss曲线的方法
2019/06/26 Python
解决python3 requests headers参数不能有中文的问题
2019/08/21 Python
Transpose 数组行列转置的限制方式
2020/02/11 Python
浅谈django 重载str 方法
2020/05/19 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
学前教育专业毕业生自荐信
2013/10/03 职场文书
幼儿园元旦活动感言
2014/03/02 职场文书
乡镇网格化管理实施方案
2014/03/23 职场文书
综治工作汇报材料
2014/10/27 职场文书
2014年新教师工作总结
2014/11/08 职场文书
2014教师专业技术工作总结
2014/12/03 职场文书
2015年共青团工作总结
2015/05/15 职场文书
立春观后感
2015/06/18 职场文书
食堂管理制度范本
2015/08/04 职场文书
javascript对象3个属性特征
2021/11/17 Javascript
MySQL 自动填充 create_time 和 update_time
2022/05/20 MySQL