2011-11-25 71 views
7

很抱歉的模糊的题目,希望我能解释一下:onbeforeunload对话框中取消与window.location.href IE8漏洞

我有一个标准,“你确定要离开”对话框,弹出一个用户时试图离开一个页面:当此加上window.location.href和用户点击取消的“未指定的错误”被扔在Internet Explorer 8或更早

window.onbeforeunload = function() { 
    return 'You have unsaved changes'; 
} 

。其他现代浏览器似乎也没有这种情况。

<script type="text/javascript"> 
    $('input').click(function() { 
     window.location.href = 'http://www.google.com'; // error is thrown here 
    }); 
</script> 

<input type="button" value="Go to google" /> 

有什么办法,我可以继续使用window.location.href并得到解决此bug在IE8?

+0

对不起忘记了重要的一点,当用户点击取消,它只是发生在“是否确定要离开”对话框 – ajbeaven

+0

哪里协议? – alex

+0

只是一个错字 - 更新的问题。 – ajbeaven

回答

4

这是一个众所周知的IE浏览器漏洞。我认为你可以用try块来捕捉那个错误。