js 滑出效果会闪烁一下

问题现象如题所示,在调用jQuery 滑出效果时,层会现次闪烁一下.在网上找了许多解决文案,说要加如下标示:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


可问题是现在的 标题头已 为 html4.0 ,如若改为上面的情况,则页面会乱掉。最终找到了一个高手写的东东,重写的jQuery的滑出

效果。高手的链接地址如下:
http://aqr199.myweb.hinet.net/jquery_slide_iebug.htm

代码如下:

  1. var b1 = new slide_fix($('#Div3'));  
  2. $('#Button5').click(function(){b1.close();});//收  
  3. $('#Button6').click(function(){b1.open();});//開  
  4.   
  5. function slide_fix(b){  
  6.   
  7.     var h = b.height();  
  8.     var step = 600;  
  9.     var time = 13;  
  10.       
  11.     this.open = function(){  
  12.             timeRate(step,function(c,r){  
  13.                 var h1 = h*r;  
  14.                 b.height(h1);  
  15.                 if(c==1){b.show();}  
  16.             });  
  17.     }  
  18.       
  19.     this.close = function(){  
  20.         timeRate(step,function(c,r){  
  21.                 var h1 = h *(1-r);  
  22.                 b.height(h1);  
  23.                 if(r==1){b.hide();}  
  24.         });  
  25.     }  
  26.   
  27.         function timeRate(step,fn){  
  28.             var t = now();  
  29.             var count = 1;  
  30.             var timeId = setInterval(function(){  
  31.                 var t1 = now();  
  32.           var rate = ((t1-t)>step) ? 1 : (t1-t)/step;  
  33.           fn(count,rate);  
  34.           if(rate==1){clearInterval(timeId);}  
  35.           count++;  
  36.             },time);  
  37.         }  
  38.   
  39.     function now() {  
  40.         return (new Date).getTime();  
  41.     }  


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值