【发布时间】:2015-03-06 02:46:45
【问题描述】:
我无法查明这一点,但有人怀疑 turbolinks 是罪魁祸首。更改菜单只是为了确保它不是一些奇怪的菜单问题。
我打开页面,单击菜单按钮 - 它工作,它打开侧面菜单,我单击菜单中的链接,然后它返回到我的应用程序。然后菜单按钮不再触发。最初当我使用 mmenu 时,它似乎缺少与 mmenu 相关的点击事件。使用 sidr,它似乎在那里,但没有任何反应。
我已经像这样设置了我的 jquery
Rails 4: how to use $(document).ready() with turbo-links
示例 sidr
<a id="simple-menu" href="#sidr">Menu link</a>
<div id="sidr">
<ul>
<li><a href="#">List 1</a></li>
<li class="active"><a href="#">List 2</a></li>
<li><a href="#">List 3</a></li>
</ul>
</div>
JS 文件包含在树中
var ready;
ready = function() {
$('#simple-menu').sidr();
};
$(ready);
$(document).on('page:load', ready);
我已经使用 jquery turbolinks gem 设置了我的 application.js,例如
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require bootstrap-sprockets
//= require jquery-ui/core
//= require jquery-ui/autocomplete
//= require jquery.mmenu.min
//= require_tree .
//= require turbolinks
建议?
【问题讨论】:
-
你的意思是
$('#sidr').sidr();? -
有一个未包含在代码中的链接。不,显然应该是简单菜单berriart.com/sidr/#
-
我能找到的唯一完整的解决方法是完全禁用 turbolinks...希望能重新集成它并同时工作
-
我遇到了完全相同的问题。在初始页面加载时,菜单按预期工作。但是从菜单中单击链接会以某种方式破坏下一页上的菜单。奇怪的是其他 turbolinks 请求工作正常。我可以单击菜单外的链接,然后菜单将在下一页打开。非常令人沮丧。
标签: jquery ruby-on-rails turbolinks mmenu sidr