我发现了一个问题,似乎总是在IE8中打开一段html和javascript时重现。为什么IE8挂在jquery window.resize事件?
<html>
<body>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(window).resize(function() {
console.log('Handler for .resize() called');
});
});
</script>
<div id="log">
</div>
</body>
</html>
加载该文件在IE8和开放开发工具将显示该日志信息的浏览器窗口中的一个调整大小后连续打印。
有没有人有一个想法,为什么?这在IE7或IE9中不会发生,也不会在其他浏览器(或至少是其最新版本)中发生。
UPDATE
一个解决方案,以防止调整大小的连续的触发器()是添加处理程序上document.body.onresize如果浏览器IE8是。
var ieVersion = getInternetExplorerVersion();
if (ieVersion == 8) {
document.body.onresize = function() {
};
}
else {
$(window).resize(function() {
});
}
但是这不能回答我的问题:在IE8中是否继续触发resize()错误?
无法在IE8中使用此fiddel重现此问题:http://jsfiddle.net/hrtp8/ – DanielB 2011-05-10 08:47:20