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 相关文章推荐
基于jQuery实现点击同时更改两个iframe的网址
Jul 01 Javascript
JQuery Tips相关(1)----关于$.Ready()
Aug 14 Javascript
angularJS提交表单(form)
Feb 09 Javascript
JS实现星星评分功能实例代码(两种方法)
Jun 09 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
Nov 16 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
Jan 12 Javascript
在js中做数字字符串补0(js补零)
Mar 25 Javascript
angular2中router路由跳转navigate的使用与刷新页面问题详解
May 07 Javascript
Vue组件开发技巧总结
Mar 04 Javascript
vue下axios拦截器token刷新机制的实例代码
Jan 17 Javascript
Vue中函数防抖节流的理解及应用实现
Apr 24 Javascript
微信小程序中使用vant框架的具体步骤
Feb 18 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
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
2014/10/30 PHP
PHP快速推送微信模板消息
2017/04/14 PHP
PHP开发api接口安全验证操作实例详解
2020/03/26 PHP
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
2007/09/04 Javascript
JavaScript之编码规范 推荐
2012/05/23 Javascript
Jquery中LigerUi的弹出编辑框(实现方法)
2013/07/09 Javascript
javascript实现dom动态创建省市纵向列表菜单的方法
2015/05/14 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
Bootstrap缩略图与警告框学习使用
2017/02/08 Javascript
vue loadmore组件上拉加载更多功能示例代码
2017/07/19 Javascript
js实现QQ面板拖拽效果(慕课网DOM事件探秘)(全)
2017/09/19 Javascript
Angular 组件之间的交互的示例代码
2018/03/24 Javascript
js中null与空字符串&quot;&quot;的区别讲解
2019/01/17 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
微信小程序点击按钮动态切换input的disabled禁用/启用状态功能
2020/03/07 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
Python 解析XML文件
2009/04/15 Python
python让图片按照exif信息里的创建时间进行排序的方法
2015/03/16 Python
Python的组合模式与责任链模式编程示例
2016/02/02 Python
python 根据正则表达式提取指定的内容实例详解
2016/12/04 Python
matplotlib在python上绘制3D散点图实例详解
2017/12/09 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
浅析python,PyCharm,Anaconda三者之间的关系
2019/11/27 Python
基于Pytorch SSD模型分析
2020/02/18 Python
Python SQLAlchemy库的使用方法
2020/10/13 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
英国外籍人士的在线超市:British Corner Shop
2019/06/03 全球购物
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
德国家具折扣店:POCO
2020/02/28 全球购物
见习期自我鉴定
2013/11/07 职场文书
优秀毕业生求职信范文
2014/01/02 职场文书
晚会邀请函范文
2014/01/24 职场文书
工作决心书范文
2014/03/11 职场文书
师德师风自查材料
2014/10/14 职场文书
该怎么书写道歉信?
2019/07/03 职场文书