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 MD4
Dec 20 Javascript
拖拉表格的JS函数
Nov 20 Javascript
jQuery ul标签下拉菜单演示代码
Dec 11 Javascript
JavaScript的parseInt 取整使用
May 09 Javascript
给js文件传参数(详解)
Jul 13 Javascript
阿里巴巴技术文章分享 Javascript继承机制的实现
Jan 14 Javascript
Javascript从数组中随机取出不同元素的两种方法
Sep 22 Javascript
提高JavaScript执行效率的23个实用技巧
Mar 01 Javascript
详解AngularJS ng-class样式切换
Jun 27 Javascript
vue-cli项目修改文件热重载失效的解决方法
Sep 19 Javascript
Vue form表单动态添加组件实战案例
Sep 02 Javascript
原生JS实现萤火虫效果
Mar 07 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中限制ip段访问、禁止ip提交表单的代码分享
2014/08/22 PHP
PHP下载生成的csv文件及问题总结
2015/08/06 PHP
javascript实现的距离现在多长时间后的一个格式化的日期
2009/10/29 Javascript
javascript中的绑定与解绑函数应用示例
2013/06/24 Javascript
js中一个函数获取另一个函数返回值问题探讨
2013/11/21 Javascript
jquery实现文本框textarea自适应高度
2016/03/09 Javascript
常用Javascript函数与原型功能收藏(必看篇)
2016/10/09 Javascript
微信小程序 登陆流程详细介绍
2017/01/17 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
jQuery实现三级联动效果
2017/03/02 Javascript
整理关于Bootstrap表单的慕课笔记
2017/03/29 Javascript
运用jQuery写的验证表单(实例讲解)
2017/07/06 jQuery
Vue computed计算属性的使用方法
2017/07/14 Javascript
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
2017/09/15 Javascript
使用JSON格式提交数据到服务端的实例代码
2018/04/01 Javascript
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
python去掉字符串中重复字符的方法
2014/02/27 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
遍历python字典几种方法总结(推荐)
2016/09/11 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python微信跳一跳系列之棋子定位颜色识别
2018/02/26 Python
利用python修改json文件的value方法
2018/12/31 Python
Python WEB应用部署的实现方法
2019/01/02 Python
Python extract及contains方法代码实例
2020/09/11 Python
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
护士自我鉴定总结
2014/03/24 职场文书
中秋节主持词
2014/04/02 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
欢迎新生标语2015
2015/07/16 职场文书
勤俭节约主题班会
2015/08/13 职场文书
学校2016年全国助残日活动总结
2016/04/01 职场文书
python+opencv实现视频抽帧示例代码
2021/06/11 Python
引用计数法和root搜索算法以及JVM中判定对象需要回收的方法
2022/04/19 Java/Android
错误码NET::ERR_CERT_DATE_INVALID证书已过期解决方法?
2022/07/07 数码科技