IE下window.onresize 多次调用与死循环bug处理方法介绍


Posted in Javascript onNovember 12, 2013

window.onresize 在IE浏览器下有多次被执行甚至死循环的bug,会导致浏览器卡死

解决方案:

// IE浏览器下将onresize事件放在div上
if(navigator.userAgent && navigator.userAgent.toLowerCase().indexOf("msie")>-1){
    document.body.innerHTML = '<div onresize="resetClientWidth();lazyLoadImgesMethod();" style="width:100%;height:100%;position:absolute;z-index:-999;"></div>' + document.body.innerHTML;    
} else {
    window.onresize = function(){
      resetClientWidth();
      lazyLoadImgesMethod();
    };
}

ps:FF浏览器不支持在div上写onresize事件,window.onresize 虽然在FF下不会死循环,但如果在函数里面有alert执行,FF浏览器也会卡死,很无奈的bug。

PS: navigator.userAgent.split(";")[1].toLowerCase().indexOf("msie")>-1 这个判断ie的问题, 在chrome浏览器下会出现"toLowerCase()"方法未定义的错误.

所以修正为navigator.userAgent.toLowerCase().indexOf("msie")>-1

Javascript 相关文章推荐
Javascript 中的 &amp;&amp; 和 || 使用小结
Apr 25 Javascript
IE下js调试工具Companion.JS
Oct 15 Javascript
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
Jan 15 Javascript
Javascript 判断是否存在函数的方法
Jan 03 Javascript
js实现带搜索功能的下拉框实时搜索实时匹配
Nov 05 Javascript
jquery.ajax之beforeSend方法使用介绍
Dec 08 Javascript
JavaScript实现的背景自动变色代码
Oct 17 Javascript
JS操作input标签属性checkbox全选的实现代码
Mar 02 Javascript
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
Mar 01 Javascript
浅谈如何通过node.js对数据进行MD5加密
May 16 Javascript
基于vue实现探探滑动组件功能
May 29 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
Aug 31 Javascript
JS获取键盘上任意按键的值(实例代码)
Nov 12 #Javascript
只需一行代码,轻松实现一个在线编辑器
Nov 12 #Javascript
JS中实现replaceAll的方法(实例代码)
Nov 12 #Javascript
jquery.validate的使用说明介绍
Nov 12 #Javascript
javascript 函数及作用域总结介绍
Nov 12 #Javascript
Javascript之this关键字深入解析
Nov 12 #Javascript
js hover 定时器(实例代码)
Nov 12 #Javascript
You might like
php中文字母数字验证码实现代码
2008/04/25 PHP
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
PHP求小于1000的所有水仙花数的代码
2012/01/10 PHP
php+ajax实时输入自动搜索匹配的方法
2014/12/26 PHP
基于PHP技术开发客服工单系统
2016/01/06 PHP
Zend Framework上传文件重命名的实现方法
2016/11/25 PHP
Docker搭建自己的PHP开发环境
2018/02/24 PHP
3Z版基于jquery的图片复选框(asp.net+jquery)
2010/04/12 Javascript
javascript中arguments,callee,caller详解
2016/03/16 Javascript
jQuery中$.grep() 过滤函数 数组过滤
2016/11/22 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
详解angularJS动态生成的页面中ng-click无效解决办法
2017/06/19 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
JS实现的RC4加密算法示例
2018/08/16 Javascript
解决layui的input独占一行的问题
2019/09/10 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
简介JavaScript错误处理机制
2020/08/04 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
jQuery-App输入框实现实时搜索
2020/11/19 jQuery
[19:59]2014DOTA2国际邀请赛 IG战队纪录片
2014/08/07 DOTA
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python使用pyh生成HTML文档的方法示例
2018/03/10 Python
Flask框架web开发之零基础入门
2018/12/10 Python
Python shutil模块用法实例分析
2019/10/02 Python
查看端口并杀进程python脚本代码
2019/12/17 Python
Django admin组件的使用
2020/10/24 Python
Python Pandas数据分析工具用法实例
2020/11/05 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
HTML中meta标签及Keywords
2020/04/15 HTML / CSS
Wallis官网:英国女装零售商
2020/01/21 全球购物
小学教师的个人自我鉴定
2013/10/24 职场文书
新春联欢会主持词
2014/03/24 职场文书
公证书格式
2015/01/23 职场文书
作弊检讨书范文
2015/05/06 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python