html - link_to_function "javascript:history.back()"在谷歌浏览器中不起作用

标签 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 扩展程序内部导航时不起作用。我这样做的原因是因为我们在不同的应用程序/扩展程序/工具栏中跨浏览器使用这些页面,具体取决于浏览器。除了我们的 chrome 扩展程序,它在所有这些程序中都有效。

最佳答案

javascript: 协议(protocol)它用于 hrefs,而不是用于 onclicks。如果你取出 javascript: 它可能会工作:

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

虽然 IE 和 Firefox 接受这一点对我来说很奇怪..

关于html - link_to_function "javascript:history.back()"在谷歌浏览器中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7719192/

相关文章:

ruby-on-rails - 如何运行 GenieACS?

google-chrome - 从 URL 打开 Chrome VNC 查看器

css - 背景图像上的无效属性值

javascript - 动态html生成div id麻烦

ruby-on-rails - 最快的 Rails 测试运行器 : spork and zentest?

html - <li> 元素 float 在绝对定位框内 IE8 及以下

ruby-on-rails - Phoenix 的scrub_params 是不是像Rails 的强参数?

css - 为 chrome 和 safari 划分 css

javascript - 当 iframe 内容执行 window.close 时执行某些操作

html - 如何修改 Meteor Accounts-Entry 包中的登录页面