正如标题所说,此代码是否有效,是否可以在主流浏览器中使用?
我问,因为目前我没有资源来测试它,所以我希望得到一些帮助。
这是我的(未经测试):
setTimeout(window.location.history.go(-2), 5000);
由于
答案 0 :(得分:8)
setTimeout(window.location.history.go(-2), 5000);
history
是window
的属性,而不是location
。此外,如果您希望它在延迟后触发,您将需要进行延迟调用功能 - 目前您正在立即调用go()
,并将函数的返回值传递给setTimeout
,这显然赢了不行。你可能意味着:
setTimeout(function() {
history.go(-2);
}, 5000);
至于“返回两页”,是的,它几乎可以在所有支持JS的浏览器中使用,但是用户可能会发现令人难以置信的混乱。你确定要这么做吗?
答案 1 :(得分:0)
正如您所见here所有浏览器都支持这一点很久(因为ff1.0 / opera 5 / ie 3)。
答案 2 :(得分:0)
适用于Netscape 2.0 +,IE3 +,Opera 5.12 +,Firefox 1 +,Konquerer 3.1 +,Safari 1+。 你必须确定,历史上至少有这么多网站,你想回去。
答案 3 :(得分:0)
自第一版JavaScript以来,它一直存在,因此受到普遍支持。但请注意,您的代码将无法正常工作,因为您现在正在调用go
,并将函数的结果作为函数引用传递。此外,它只是history
,而不是location.history
。试试这个:
setTimeout(function() { history.go(-2); }, 5000);