JavaScript控制网页层收起和展开效果的方法


Posted in Javascript onApril 15, 2015

本文实例讲述了JavaScript控制网页层收起和展开效果的方法。分享给大家供大家参考。具体如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">  
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<title>很酷的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:#333; padding:3px;
display:block; color:#99CC00
}
.class1 {
width:40%; background:#CCC;
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:#333; padding:3px; margin-top:5px;
color:#99CC00
}
#class1content {
height:300px;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">
<h1>DIV层的展开隐藏效果</h1>
<span id="stateBut" onclick="$use()">展开</span>
<p id="class1content">曾经有一份真诚的爱情放在我面前, 
<br>我没有珍惜,<br>等我失去的时候我才后悔莫及,
<br>人世间最痛苦的事莫过于此。
<br>如果上天能够给我一个再来一次的机会,
<br>我会对那个女孩子说三个字:<br>我爱你。
<br>如果非要在这份爱上加上一个期限,
<br>我希望是……一万年!”
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
探索Emberjs制作一个简单的Todo应用
Nov 07 Javascript
不同Jquery版本引发的问题解决
Oct 14 Javascript
js实现感应鼠标图片透明度变化的方法
Feb 20 Javascript
JS实现的自定义显示加载等待图片插件(loading.gif)
Jun 17 Javascript
基于BootstrapValidator的Form表单验证(24)
Dec 12 Javascript
JS中检测数据类型的几种方式及优缺点小结
Dec 12 Javascript
详解vue-cli项目中用json-sever搭建mock服务器
Nov 02 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
Feb 10 Javascript
jquery.pagination.js分页使用教程
Oct 23 jQuery
vuex如何重置所有state(可定制)
Jan 17 Javascript
vue瀑布流组件实现上拉加载更多
Mar 10 Javascript
Javascript基于OOP实实现探测器功能代码实例
Aug 26 Javascript
JS扩展方法实例分析
Apr 15 #Javascript
JavaScript实现简单的二级导航菜单实例
Apr 15 #Javascript
JQuery radio(单选按钮)操作方法汇总
Apr 15 #Javascript
JavaScript判断前缀、后缀是否是空格的方法
Apr 15 #Javascript
JQuery控制radio选中和不选中方法总结
Apr 15 #Javascript
jquery插件star-rating.js实现星级评分特效
Apr 15 #Javascript
JQuery判断radio(单选框)是否选中和获取选中值方法总结
Apr 15 #Javascript
You might like
239军机修复记
2021/03/02 无线电
基于数据库的在线人数,日访问量等统计
2006/10/09 PHP
php 获取远程网页内容的函数
2009/09/08 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
php发送post请求的三种方法
2014/02/11 PHP
删除html标签得到纯文本可处理嵌套的标签
2014/04/28 PHP
CodeIgniter记录错误日志的方法全面总结
2016/05/17 PHP
PHP如何使用array_unshift()在数组开头插入元素
2020/09/01 PHP
sina的lightbox效果。
2007/01/09 Javascript
IE8 兼容性问题(属性名区分大小写)
2009/06/04 Javascript
js DataSet数据源处理代码
2010/03/29 Javascript
jquery 学习之二 属性 文本与值(text,val)
2010/11/25 Javascript
JQuery EasyUI 加载两次url的原因分析及解决方案
2014/08/18 Javascript
使用jquery获取url及url参数的简单实例
2016/06/14 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
微信小程序 转发功能的实现
2017/08/04 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
Bootstrap-table自定义可编辑每页显示记录数
2018/09/07 Javascript
Vue使用lodop实现打印小结
2019/07/06 Javascript
JavaScript实现五子棋小游戏
2020/10/26 Javascript
python fabric使用笔记
2015/05/09 Python
编写Python爬虫抓取豆瓣电影TOP100及用户头像的方法
2016/01/20 Python
python匹配两个短语之间的字符实例
2018/12/25 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
浅析CSS3 中的 transition,transform,translate之间区别和作用
2020/03/26 HTML / CSS
CSS3 transition 实现通知消息轮播条
2020/10/14 HTML / CSS
趣天网日本站:Qoo10 JP
2019/09/18 全球购物
商务日语毕业生自荐信范文
2013/11/14 职场文书
公共场所禁烟标语
2014/06/25 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
教师党员承诺书2015
2015/01/21 职场文书
日本读研:怎样写好一篇日本研究计划书?
2019/07/15 职场文书
mybatis 解决从列名到属性名的自动映射失败问题
2021/06/30 Java/Android
mysql5.5中文乱码问题解决的有用方法
2022/05/30 MySQL
Android Gradle 插件自定义Plugin实现注意事项
2022/06/16 Java/Android