link_to_function“javascript:history.back()”在谷歌浏览器中无效

时间:2011-10-10 22:01:16

标签: html ruby-on-rails google-chrome navigation google-chrome-extension

处理一些动态页面,特别是我们为用户提供了个人资料页面。但是,他们有几个路径可以访问这些页面,因此为后退按钮设置特定的路径是不实际的。

这是我的代码:

<%= link_to_function "Back", 'javascript:history.back()', { :class => "button-back" } %>

并生成此html:

<a href="#" class="button-back" onclick="javascript:history.back(); return false;">Back</a>

这适用于IE和Firefox但不适用于Chrome ....什么给出了?我看过其他类似的堆栈问题,但它们都不是特定于浏览器的,根据它们,这应该有效。任何帮助将不胜感激。

编辑: 进一步测试后发现真正的问题是,这是在Chrome中工作,但是当我将页面放入Iframe并尝试使用按钮在chrome扩展内导航时不起作用。我这样做的原因是因为我们在不同的应用程序/扩展/工具栏中使用这些页面跨浏览器,具体取决于浏览器。除了镀铬扩展外,它在所有这些工作中都有效。

1 个答案:

答案 0 :(得分:0)

用于hrefs的javascript:协议,而不是用于onclicks。如果您取出javascript:它可能会起作用:

<%= link_to_function "Back", 'history.back()', { :class => "button-back" } %>

我很奇怪,IE和Firefox接受了这个......