我有一个单选按钮和复选框列表,我想监视他们的事件以获取他们的值
一旦点击它们,我想在值上运行一些逻辑
现在我看到的是它减慢了IE8 / IE9中实际更改的渲染时间
现在发生的是我看到视图等待结果,看起来很奇怪
所有其他浏览器都轻而易举
但IE并不是那么多
这是一个示例代码
<html>
<body>
<input type="radio" name="rad" value="1" id="t" />
</body>
<script type="text/javascript">
function addEventHandler(elem,eventType,handler) {
if (elem.addEventListener){
elem.addEventListener (eventType,handler,false);
}else if (elem.attachEvent){
elem.attachEvent ('on'+eventType,handler);
}
}
var el = document.getElementById("t");
addEventHandler( document.getElementById("t") , 'click' , function(){
for(var i=0;i<30000000;i++);// the for loop is only to show the blocking behavior that OP is experiencing
alert("handled")
} );
</script>
</html>
如何阻止ie视图停止并等待JavaScript直到完成操作?
答案 0 :(得分:5)
“如何阻止ie视图停止并等待JavaScript直到完成操作?”
您无法阻止IE等待JavaScript。通过等待,它的行为正确。
您可以做的最好的事情是改进您的代码,以便执行时间不会太长,或者将其分解为异步执行的较小块。