按钮javascript适用于IE但不适用于firefox window.navigate()

时间:2009-07-10 21:31:02

标签: javascript html internet-explorer-8

<input type="button" value="Back" onClick="window.navigate('http://www.google.com')">

这适用于IE8,但不适用于Firefox或Opera。任何人都知道为什么以及如何解决它?

6 个答案:

答案 0 :(得分:8)

如果您选中the documentation for that method,您会看到相当常见的信息:

没有适用于此方法的公共标准。

这意味着它是非标准功能,很可能只适用于Internet Explorer。

这将有效:

<input type="button" value="Back" onclick="window.location.href='http://www.google.com';">

如果您使用的是XHTML:

<input type="button" value="Back" onclick="window.location.href='http://www.google.com';" />

答案 1 :(得分:4)

.navigate()仅适用于IE。

尝试设置window.location。

window.location.href = 'http://www.google.com'

答案 2 :(得分:2)

<a href="http://www.google.com">Google</a>

...和“后退”是链接文本的不良选择。链接或您的IE特定JS将使用户转发。它会在用户历史记录的末尾添加一个URL。它不会激活浏览器的Forward功能。

答案 3 :(得分:0)

<input type='button' value='click' onclick="window.location='http://google.com';" />

答案 4 :(得分:0)

对于此问题的搜索者:确保您的输入不会像sumbit一样发布到当前页面。在这种情况下,任何导航方法都不起作用。 要解决此问题,请在点击处理程序

上添加event.preventDefault()

答案 5 :(得分:0)

window.navigate是非标准的Internet Explorer功能。其他 浏览器根本不提供该功能。

您可以使用以下方法进行填充:

if (! window.navigate) {
    window.navigate = function (arg) {
    location.assign(arg);
   } 
}  

…但是如果您重新编写代码以使用它,代码会更好 标准方法(即定位对象)放在首位。

参考:https://stackoverflow.com/a/28793432/6737444