以下是我的代码。无法理解为什么它在IE中工作但在Firefox中不起作用。非常感谢任何帮助。
$(document).ready(function() {
var delay = 30000;
setTimeout(function () {
window.location.replace = "Index";
}, delay);
});
答案 0 :(得分:4)
更改
window.location.replace = "Index";
到
window.location.replace("Index");
使用 replace
var delay=30000;
setTimeout(function () {
window.location.replace("Index");
}, delay);
答案 1 :(得分:0)
似乎firefox不喜欢window.location.replace格式。
尝试使用window.location.href
答案 2 :(得分:0)
这是怎么回事:
window
对象的location
属性有一个名为replace
的属性。 replace
属性的内容/值为a function that replaces the current document with a new one。
您可以像这样调用此函数:
window.location.replace(<new_url>);
但是当你这样做时,
window.location.replace = "Index";
发生的情况是,replace
属性的值已更改为(或替换为)字符串"Index"
。
现在这很糟糕。因为replace
是一个所有JavaScript都应该能够使用的实用函数。
Firefox没有问题。当它创建匿名函数时,它必须检测到您正在执行非法操作。所以setTimeout
失败了。
但由于一些奇怪的原因,IE似乎允许这个。既然你告诉我们它已经在IE&#34;中工作了,我很想知道&#34;在IE中工作&#34;手段。 IE做什么?无论IE做什么,它都不应该在这种情况下这样做。