我有一个单选按钮和复选框的列表,我想监视它们的事件以获取它们的值
一旦他们被点击我想运行一些逻辑值
现在我看到的是,它减慢渲染时间为IE8/IE9的实际变化
现在发生的事情是,我看到的结果视图等待它看起来怪异 其他所有浏览器微风通过它
但IE没那么多IE停止工作,而JavaScript正在运行一些操作
这里是一个示例代码
<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>
我如何可以防止停止并等待对JavaScript,直到完成了其操作,即有何看法?
由于没有多少3000万循环迭代,它可能会很慢。 – jbabey
是的:for(var i = 0; i <30000000; i ++);'是一个错误。 – Pointy
以及为什么它在其他浏览器中工作得很好? –