我正在使用jQuery(v 1.7.1)并且需要我正在运行的ui代码在IE7中工作。在所有现代浏览器中都没问题,IE8也很好。
问题似乎是文档准备好多次触发,并导致性能问题。这似乎也是网站上各个页面的问题,JS代码复杂程度各不相同。我已经读过异常会导致这种行为,但我不相信异常是问题(通过一些全局异常捕获代码验证)。
$(document).ready(function () {
alert('doc ready');
do stuff....
});
以上代码导致我在UI冻结之前多次看到“doc ready”警告。
这是jQuery中的一个已知问题,有没有办法解决IE7?
由于
更新...尝试隔离问题,我已经用最简单的页面进行了测试,这个简单的页面无法重现问题......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test JQUery IE7</title>
<script type="text/javascript" src="/Scripts/jquery-1.7.1.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
alert('doc ready...');
});
</script>
</body>
</html>
答案 0 :(得分:0)
问题实际上是$(window).resize函数,似乎在IE7中更频繁地触发。当然,IE7只是在每个事件上运行面向UI的JS时更加努力。
设置计时器/间隔以限制事件处理的频率解决了问题