在Firefox响应不断变化的[removed].href一个onunload事件(Changing

2019-10-20 02:59发布

我有使用window.location.href一个奇怪的JavaScript的问题,这显然只影响火狐(我使用的是3.6)。

通常情况下window.location.href不会只读,这完全在FF:

window.location.href = "http://google.com/";

然而,当我打电话以响应onunload事件(函数),这并不会达到预期效果:

function testThis() {
    alert ("1: " + window.location.href);
    window.location.href = "http://google.com/";
    alert ("2: " + window.location.href);
    return false;
}

在这两种情况下,警报将显示在FF页面的当前位置,无需进行更改。 有没有JavaScript错误,和onunload事件成功地调用该函数,所以这个问题似乎被编辑或更换window.location.href的价值。

我已经使用了window.location,document.location.href试过了,甚至试图改变window.location.search。 有没有可能是一个事件,具体的onunload事件,导致window.location.href成为只读?

Answer 1:

是的,以防止恶意网页从离开阻止用户。



Answer 2:

为了记录在案,火狐似乎代替document.location.href的使用document.location。



文章来源: Changing window.location.href in Firefox in response to an onunload event