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 相关文章推荐
整理8个很棒的 jQuery 倒计时插件和教程
Dec 12 Javascript
详解JavaScript正则表达式中的global属性的使用
Jun 16 Javascript
jquery实现可自动收缩的TAB网页选项卡代码
Sep 06 Javascript
详解angular中如何监控dom渲染完毕
Jan 03 Javascript
Jquery根据浏览器窗口改变调整大小的方法
Feb 07 Javascript
详解vue-cli + webpack 多页面实例应用
Apr 25 Javascript
微信小程序之滚动视图容器的实现方法
Sep 26 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 jQuery
JS实现DOM删除节点操作示例
Apr 04 Javascript
js实现图片上传并预览功能
Aug 06 Javascript
图文讲解vue的v-if使用方法
Feb 11 Javascript
vue以组件或者插件的形式实现throttle或者debounce
May 22 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
php ob_flush,flush在ie中缓冲无效的解决方法
2010/05/09 PHP
url decode problem 解决方法
2011/12/26 PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
PHP如何实现订单的延时处理详解
2017/12/30 PHP
ThinkPHP5.1验证码功能实现的示例代码
2020/06/08 PHP
Prototype Number对象 学习
2009/07/19 Javascript
jQuery toggleClass应用实例(附效果图)
2014/04/06 Javascript
AngularJS 依赖注入详解和简单实例
2016/07/28 Javascript
js从外部获取图片的实现方法
2016/08/05 Javascript
js 提交form表单和设置form表单请求路径的实现方法
2016/10/25 Javascript
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
2017/07/12 jQuery
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
vue 监听屏幕高度的实例
2018/09/05 Javascript
JavaScript 预解析的4种实现方法解析
2019/09/03 Javascript
vue项目强制清除页面缓存的例子
2019/11/06 Javascript
JS数据类型STRING使用实例解析
2019/12/18 Javascript
Element-UI+Vue模式使用总结
2020/01/02 Javascript
微信小程序8种数据通信的方式小结
2020/02/03 Javascript
[43:49]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
python 给DataFrame增加index行名和columns列名的实现方法
2018/06/08 Python
selenium + python 获取table数据的示例讲解
2018/10/13 Python
意大利奢侈品网站:Italist
2016/08/23 全球购物
戴森比利时官方网站:Dyson BE
2020/10/03 全球购物
如何利用find命令查找文件
2016/11/18 面试题
中专生自我鉴定范文
2013/12/19 职场文书
旷课检讨书1000字
2014/02/14 职场文书
创建卫生先进单位实施方案
2014/03/10 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
本科毕业答辩开场白
2015/05/27 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
创业计划书之面包店
2019/09/17 职场文书
Python中Cookies导出某站用户数据的方法
2021/05/17 Python