IE下window.onresize 多次调用与死循环bug处理方法介绍
更新时间:2013年11月12日 10:13:45 作者:
IE下window.onresize多次调用与死循环bug处理方法介绍。需要的朋友可以过来参考下,希望对大家有所帮助
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的Object.defineProperty详解
本篇文章给大家详细讲述了JavaScript的Object.defineProperty的相关知识点内容,有兴趣的朋友参考学习下。2018-07-07
npm安装依赖时出现Peer Dependencies冲突报错解决分析
这篇文章主要为大家介绍了npm安装依赖时出现Peer Dependencies冲突报错解决分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-09-09
JS使用getComputedStyle()方法获取CSS属性值
经常会用到js来获取元素的CSS样式,由于方法众多,在下面的文章中为大家详细整理下2014-04-04


最新评论