网站首页 手机版
 注册 登录
您现在的位置: 畅无忧设计 >> 网页特效 >> 表格图层 >> 正文
最新文章
· JS代码实现单元格移动效果
· JavaScript让表格的边框闪烁起来
· 网页Div层拖拽--Clone特效代码
· 可拖动的DIV层
· 简单拖曵的原理与实例
· 上传图片之前先预览图片
· 漂亮的Js拖动层,窗口拖拽(改变大小
· 隔行换色,鼠标划过改变颜色
· Js点击文字弹出层,点击层以外区域关
· CSS自动竖向排列的布局方法
热门文章
 js实现div区域块伸缩效果(toggle)
 js弹出层组件artDialog2.1正式版
 一个简单实用的jquery拖动插件jque
 JS仿EXCEL表格功能
 点击页面任何地方,将div隐藏,除了
 动态插入、添加删除表格行的JS代码
 带遮罩效果并可以拖动的DIV弹出层
 Js点击文字弹出层,点击层以外区域
 利用js向表格动态追加行
 JQuery EasyValidator表单验证插件
相关文章
没有相关文章
js实现div区域块伸缩效果(toggle)
来源:蓝色理想 更新时间:2010/8/30 10:06:52 阅读次数: 我要投稿
☉预览 ↓下载 #复制 +收藏
特效代码:
view plaincopy to clipboardprint? 
/*------------------------------------------------   
 * 作者:草履虫   
 * email:caolvchong@gmail.com   
 * Version:toggle 1.0 ^_^   
 * 版权:使用请保留这段信息   
 * 时间:2007年12月12日   
 * -----------------------------------------------   
 */   
var $ ={    
    style:function(node){    
        return node.currentStyle || document.defaultView.getComputedStyle(node,null) || node.style;    
    },    
    height:function(node){    
        return parseInt($.style(node).height) || parseInt(node.clientHeight);    
    },    
    id:function(node){    
        return document.getElementById(node);    
    }    
}    
function _toggle(node,speed){    
    this.node = node;    
    switch(speed){    
        case "fast":    
            this.speed = 10;    
            break;    
        case "normal":    
            this.speed = 5;    
            break;    
        case "slow":    
            this.speed = 2;    
            break;    
        default:    
            this.speed =5;    
    }    
    this.run = 1;    
    this.max_height = $.height(this.node);    
    this.node.style.height = this.max_height;    
    this.display = $.style(this.node).display;    
    this.node.style.overflow = "hidden";    
    if(this.max_height <=0 || this.display == "none"){    
        this.flag = 1;    
    }else{    
        this.flag = -1;    
    }    
}    
_toggle.prototype.up_down = function(){    
    if(this.node.style.display == "none"){    
        this.node.style.display = "block";    
        this.node.style.height ="0px";    
    }    
    this.box_height = parseInt($.style(this.node).height);    
    this.box_height -= this.speed * this.flag;    
    if(this.box_height > this.max_height){    
        window.clearInterval(this.t);    
        this.box_height = this.max_height;    
        this.run =1;    
    }    
    if(this.box_height <0){    
        window.clearInterval(this.t);    
        this.box_height = 0;    
        this.node.style.display ="none";    
        this.run =1;    
    }    
    this.node.style.height = this.box_height + "px";    
}    
   
_toggle.prototype.toggle = function(){    
    var temp = this;    
    if(this.run == 1){    
        this.flag *= -1;    
        this.run =0;    
        this.t = window.setInterval(function(){temp.up_down();},10);    
    }    
}   
var $ ={ 
 style:function(node){ 
  return node.currentStyle || document.defaultView.getComputedStyle(node,null) || node.style; 
 }, 
 height:function(node){ 
  return parseInt($.style(node).height) || parseInt(node.clientHeight); 
 }, 
 id:function(node){ 
  return document.getElementById(node); 
 } 

function _toggle(node,speed){ 
 this.node = node; 
 switch(speed){ 
  case "fast": 
   this.speed = 10; 
   break; 
  case "normal": 
   this.speed = 5; 
   break; 
  case "slow": 
   this.speed = 2; 
   break; 
  default: 
   this.speed =5; 
 } 
 this.run = 1; 
 this.max_height = $.height(this.node); 
 this.node.style.height = this.max_height; 
 this.display = $.style(this.node).display; 
 this.node.style.overflow = "hidden"; 
 if(this.max_height <=0 || this.display == "none"){ 
  this.flag = 1; 
 }else{ 
  this.flag = -1; 
 } 

_toggle.prototype.up_down = function(){ 
 if(this.node.style.display == "none"){ 
  this.node.style.display = "block"; 
  this.node.style.height ="0px"; 
 } 
 this.box_height = parseInt($.style(this.node).height); 
 this.box_height -= this.speed * this.flag; 
 if(this.box_height > this.max_height){ 
  window.clearInterval(this.t); 
  this.box_height = this.max_height; 
  this.run =1; 
 } 
 if(this.box_height <0){ 
  window.clearInterval(this.t); 
  this.box_height = 0; 
  this.node.style.display ="none"; 
  this.run =1; 
 } 
 this.node.style.height = this.box_height + "px"; 

_toggle.prototype.toggle = function(){ 
 var temp = this; 
 if(this.run == 1){ 
  this.flag *= -1; 
  this.run =0; 
  this.t = window.setInterval(function(){temp.up_down();},10); 
 } 
}
☉预览 ↓下载 #复制 +收藏
特效说明:
js实现div区域块伸缩效果(toggle)
  • 上一篇文章:
  • 下一篇文章:
  • 关于我们 - 联系我们 - 广告服务 - 在线投稿 - 友情链接 - 网站地图 - 版权声明
    CopyRight 2008-2010, CWYDESIGN.COM - 畅无忧设计, Inc. All Rights Reserved
    滇ICP备09005765号