IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题

(编辑:jimmy 日期: 2024/10/6 浏览:2)

本文主要通过代码示例给大家介绍IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题;分步介绍,先给大家介绍IE7浏览器窗口大小改变事件执行多次bug,具体问题分析及解决方案请看下文。

var resizeTimer = null;
$(window).resize(function() {
 if (resizeTimer) clearTimeout(resizeTimer);
 resizeTimer = setTimeout("alert('mm')", 500);
});

还有一个通过判断变量的奇偶来解决(感觉这方法还行)

代码如下:

var n=0;
$(window).resize(function(){
 if(n%2==0){
  alert("mm");
 }
 n++;
});

无论是jquery封装的还是js原生的都会产生此bug

IE6/IE7/IE8 JQuery下resize事件执行多次的解决方法

在使用jQuery的resize事件时发现每次改变浏览器的窗口大小时resize时间会执行两次,百度搜索了一下找到一个解决的方法,

使用setTimeout来解决这个问题代码如下:

var resizeTimer = null;
$(window).resize(function() {
 if (resizeTimer) clearTimeout(resizeTimer);
 resizeTimer = setTimeout("alert('mm')", 500);
});

还有一个通过判断变量的奇偶来解决(感觉这方法还行),代码如下:

var n=0;
$(window).resize(function(){
 if(n%2==0){
  alert("mm");
 }
 n++;
});

以上就是本文针对IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题,希望对大家有所帮助。

一句话新闻

Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。