javascript + css 实现div层的伸缩(仅高度)-可设置初始慢慢展开
2011-02-16 11:40
639 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>伸缩广告代码</title>
<style type="text/css">
body {
margin:0;
text-align:center;
}
#ad {
width:898px;
height:0px;/*这里设置高度为0是为了默认先执行展开操作,而不是直接全部显示出来*/
margin:0 auto;
overflow:hidden;
}
#btn{color:#08f}
#btn:hover{color:#F80}
</style>
</head>
<body>
<h5 id="btn" onclick="toogle()" style="cursor:pointer" >收缩</h5>
<div id="ad"><img style="width:898px;height:500px;" src="http://www.bizhi100.com/image/1440_900/2/asdmd1_08.jpg"
/></div>
<script type="text/javascript">
var funStatus = true;//无需手动设置,这是标记是否可以再次进行展开/收缩操作
var unfoldValue=10;//执行展开操作的像素数,越小越慢.并且不会因为数字过大超过设定的max高度而影响显示效果
var shrinkvalue=30;//执行收缩操作的像素数,越小越慢
var time=10;//多长时间操作一次,越小越快
var min=0;//收缩到多少像素的高度停止
var max = 500;//展开到多少像素高度停止
function HideAd(o){
var timer = setInterval(function(){
if(o.offsetHeight >= min + shrinkvalue ){
o.style.height = o.offsetHeight - shrinkvalue + 'px';
document.getElementById('btn').innerHTML="展开";
funStatus = false;
}
else{
o.style.height = min+'px';
funStatus = true;
clearInterval(timer);
}
}, time);
}
function ShowAd(o){
var timer = setInterval(function(){
if(o.offsetHeight + unfoldValue < max){
o.style.height = (o.offsetHeight + unfoldValue) + 'px';
document.getElementById('btn').innerHTML="收缩";
funStatus = false;
}
else{
o.style.height = max+'px';
funStatus = true;
clearInterval(timer);
}
},time);
}
function toogle()
{
if(funStatus)
{
var o =document.getElementById('ad');
if(o.offsetHeight >= max )
HideAd(o);
else
ShowAd(o);
}
}
setTimeout(function(){toogle();funStatus = true;}, 1);
setTimeout(function(){toogle();funStatus = true;}, 5000);
</script>
</body>
</html>
欢迎大家有时间到我的小站去看看
www.joyoustore.com
transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>伸缩广告代码</title>
<style type="text/css">
body {
margin:0;
text-align:center;
}
#ad {
width:898px;
height:0px;/*这里设置高度为0是为了默认先执行展开操作,而不是直接全部显示出来*/
margin:0 auto;
overflow:hidden;
}
#btn{color:#08f}
#btn:hover{color:#F80}
</style>
</head>
<body>
<h5 id="btn" onclick="toogle()" style="cursor:pointer" >收缩</h5>
<div id="ad"><img style="width:898px;height:500px;" src="http://www.bizhi100.com/image/1440_900/2/asdmd1_08.jpg"
/></div>
<script type="text/javascript">
var funStatus = true;//无需手动设置,这是标记是否可以再次进行展开/收缩操作
var unfoldValue=10;//执行展开操作的像素数,越小越慢.并且不会因为数字过大超过设定的max高度而影响显示效果
var shrinkvalue=30;//执行收缩操作的像素数,越小越慢
var time=10;//多长时间操作一次,越小越快
var min=0;//收缩到多少像素的高度停止
var max = 500;//展开到多少像素高度停止
function HideAd(o){
var timer = setInterval(function(){
if(o.offsetHeight >= min + shrinkvalue ){
o.style.height = o.offsetHeight - shrinkvalue + 'px';
document.getElementById('btn').innerHTML="展开";
funStatus = false;
}
else{
o.style.height = min+'px';
funStatus = true;
clearInterval(timer);
}
}, time);
}
function ShowAd(o){
var timer = setInterval(function(){
if(o.offsetHeight + unfoldValue < max){
o.style.height = (o.offsetHeight + unfoldValue) + 'px';
document.getElementById('btn').innerHTML="收缩";
funStatus = false;
}
else{
o.style.height = max+'px';
funStatus = true;
clearInterval(timer);
}
},time);
}
function toogle()
{
if(funStatus)
{
var o =document.getElementById('ad');
if(o.offsetHeight >= max )
HideAd(o);
else
ShowAd(o);
}
}
setTimeout(function(){toogle();funStatus = true;}, 1);
setTimeout(function(){toogle();funStatus = true;}, 5000);
</script>
</body>
</html>
欢迎大家有时间到我的小站去看看
www.joyoustore.com
相关文章推荐
- css实现高度不固定的div元素模块在页面中水平垂直居中
- javascript使用DOM模型和CSS实现菜单的折叠和展开
- (div+css)上下固定中间自适应高度网页布局的实现(FF,IE)
- JavaScript基础 通过style属性设置div的高度,宽度,背景颜色
- div+css中设置了float属性后如何让外层的高度随着内层的高度大小自动调整
- css实现div高度根据自适应宽度(百分比)调整
- div 设置最大高度css div设置float后高度不自动增加解决
- Css中实现两个DIV左右并排摆放,且自动按比例伸缩(示例)
- JavaScript基础 通过style属性设置div的高度,宽度,背景颜色
- div+css,如何实现 1行3列,分别设置列的宽度
- CSS教程:div设置float后高度不自动增加
- JavaScript+CSS下拉菜单系列(二)——伸缩个数不受限制,高度不固定的下拉菜单
- JavaScript根据图片加载成功后高度设置DIV的高度
- 在IE6下用css设置div的高度为100%时失效的问题!
- css设置div自动填充剩余高度
- 【转】CSS实现div的高度填满剩余空间
- CSS教程:div设置float后高度不自动增加
- [转]CSS中设置div最小高度(支持IE6, IE7, IE8, FF等浏览器)
- CSS实现div的高度填满剩余空间
- 设置div的背景为半透明,下面有个不错示例,使用div+css来实现下,不会的朋友可以参考下