javascript - Foundation 5 Topbar 在 rails 4 中不能持续工作

标签 javascript ruby-on-rails drop-down-menu ruby-on-rails-4 zurb-foundation

我在我的 Rails 4 应用程序中使用 Foundation 5。当我发送请求时,顶部栏菜单工作正常。我可以悬停项目和嵌套项目没有问题。然后,我单击其中一个项目,它有一个关联的 link_to 方法。有时它会在我的菜单仍然完美运行的情况下给出正确的结果,但有时整个事情都会卡住。这也使移动菜单的后退按钮消失。一旦我通过刷新或 url 发送新请求,菜单就会再次工作。

Rails 在日志文件中没有发现任何问题。我的菜单在 rails 之外工作正常。我想知道这是否与我的 link_to tag_helpers 或我在我的应用程序中设置基础的方式有关?

这里简要概述了 JS 是如何为基础路由的。 (他们在文档中建议的配置) views/layouts/application.html.erb:

<head>
 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
 <%= stylesheet_link_tag    "application" %>
 <%= javascript_include_tag "vendor/modernizr" %>
</head>   
<body>     
  <%= javascript_include_tag "application" %>     
</body>

Assets /application.js:

//= require jquery
//= require jquery_ujs
//= require foundation
//= require turbolinks
//= require_tree .

$(document).foundation();

有没有人遇到过这个问题?除了不使用 foundation 5 之外还有什么好的解决方案吗?

谢谢 亚历克斯

最佳答案

基金会已知 Turbolinks 存在问题,您的问题可能与此有关。

要解决此问题,您可以禁用 Turbolinks 并查看顶部栏是否仍然存在问题。

这是一个简单的指南:http://blog.steveklabnik.com/posts/2013-06-25-removing-turbolinks-from-rails-4 .

除此之外,如果您必须拥有 Turbolinks,那么 Turbolinks 就是问题所在。您可以尝试添加 jquery turbolinks,如下所示:https://github.com/kossnocorp/jquery.turbolinks .

如果问题继续存在,下一步将是检查您导入 javascript 文件的顺序(这对这些 Turbolinks/Foundation 问题很重要),您可能会对这种方式感到满意。 我没有让你放入它们的确切顺序,但如果你搜索“Turbolinks Foundation”问题,你最终会偶然发现一些解决方案。 这不一定是特定的解决方案,但它'将引导您朝着正确的方向前进。

更新:尝试使用此命令导入您的 javascript Assets 。并且,引用 source :

Its important to put all the Javascripts to be loaded inside the tag. The order of inclusion of jQuery is important – ensure you load jquery.turbolinks before turbolinks and after jquery. Include all your custom js between jquery-turbolinks.js and turbolinks.js in your application.js
// app/assets/javascript/application.js

//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs

//= require foundation
//= require jwplayer/jwplayer.js
//= require asset_videos

//= require turbolinks

注意:查看Alex Aube's answer在此页面上获取更多有用信息。

关于javascript - Foundation 5 Topbar 在 rails 4 中不能持续工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21293051/

相关文章:

ruby-on-rails - 使用 token_authenticateable 时,使用多个范围登录的用户设计日志,除了一个之外

ruby-on-rails - 如何在 Rails 4 中加载供应商 Assets 文件夹?

CSS 下拉菜单,可见不工作

javascript - 如何呈现html代码输入?

javascript - select2 中的预选值

javascript - 如何在fancybox 2中获取javascript函数的返回值?

html - 全宽水平导航栏,悬停时全宽水平下拉菜单

javascript - 在表中重复回显时字符计数器不起作用

ruby-on-rails - 在 Rails 中添加数组列

javascript - 下拉导航改变顺序