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 Function对象扩展之延时执行函数
Jul 06 Javascript
用javascript判断IE版本号简单实用且向后兼容
Sep 11 Javascript
JavaScript实现的链表数据结构实例
Apr 02 Javascript
jQuery中next方法用法实例
Apr 24 Javascript
JS实现的新浪微博大厅文字内容滚动效果代码
Nov 05 Javascript
AngularJS实现表单手动验证和表单自动验证
Dec 09 Javascript
JS百度地图搜索悬浮窗功能
Jan 12 Javascript
JavaScript实现的选择排序算法实例分析
Apr 14 Javascript
用webpack4开发小程序的实现方法
Jun 04 Javascript
JavaScript工具库之Lodash详解
Jun 15 Javascript
Vue中key的作用示例代码详解
Jun 10 Javascript
vue使用watch监听属性变化
Apr 30 Vue.js
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 中文处理技巧
2010/04/25 PHP
PHP常见的几种攻击方式实例小结
2019/04/29 PHP
Chrome中模态对话框showModalDialog返回值问题的解决方法
2010/05/25 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
跟我学习javascript的垃圾回收机制与内存管理
2015/11/23 Javascript
详解js私有作用域中创建特权方法
2016/01/25 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
AngularJS基于provider实现全局变量的读取和赋值方法
2017/06/28 Javascript
详解vue项目首页加载速度优化
2017/10/18 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
2017/12/24 jQuery
jQuery实现文件编码成base64并通过AJAX上传的方法
2018/04/12 jQuery
详解小程序rich-text对富文本支持方案
2018/11/28 Javascript
jQuery判断自定义属性data-val用法示例
2019/01/07 jQuery
create-react-app使用antd按需加载的样式无效问题的解决
2019/02/26 Javascript
vue 实现基础组件的自动化全局注册
2020/12/25 Vue.js
Pycharm学习教程(7)虚拟机VM的配置教程
2017/05/04 Python
Python 比较两个数组的元素的异同方法
2017/08/17 Python
使用requests库制作Python爬虫
2018/03/25 Python
python实现数据库跨服务器迁移
2018/04/12 Python
pycharm配置当鼠标悬停时快速提示方法参数
2019/07/31 Python
Pytorch 实现focal_loss 多类别和二分类示例
2020/01/14 Python
基于Python获取docx/doc文件内容代码解析
2020/02/17 Python
使用python实现微信小程序自动签到功能
2020/04/27 Python
ONLY德国官方在线商店:购买时尚女装
2017/09/21 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
Myprotein中国网站:欧洲畅销运动营养品牌
2021/02/11 全球购物
金属材料工程毕业生个人的自我评价
2013/11/28 职场文书
顶岗实习计划书
2014/01/10 职场文书
公务员综合考察材料
2014/02/01 职场文书
2015年创先争优活动总结
2015/03/27 职场文书
家庭暴力离婚起诉书
2015/05/18 职场文书
预备党员介绍人意见
2015/06/01 职场文书
Java各种比较对象的方式的对比总结
2021/06/20 Java/Android
SQL Server实现分页方法介绍
2022/03/16 SQL Server
简单聊聊Golang中defer预计算参数
2022/03/25 Golang