在意识到我的rails应用程序遇到了$(document).ready)
无法使用turbolinks的众所周知的问题后,我完全按照文档的建议安装了jquery.turbolinks,但我仍然遇到同样的问题。每当使用turbolink来导航我的$(document).ready)
函数中的JavaScript都不起作用时。
以下是我的一些代码:
在application.js中:
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require_tree .
//= require turbolinks
JavaScript无效的示例:
$(document).ready(function() {
$('.notice:empty').hide();
$('.alert:empty').hide();
$(".notice").delay(2000).fadeOut();
$(".alert").delay(2000).fadeOut();
});
答案 0 :(得分:2)
在这种情况下,函数将在turbolinks之后加载!
function runner(){
$('.notice:empty').hide();
$('.alert:empty').hide();
$(".notice").delay(2000).fadeOut();
$(".alert").delay(2000).fadeOut();
}
$(runner);
$(document).on("turbolinks:load", runner);
答案 1 :(得分:0)
原来是一个简单的错误,我在application.js文件中实际上有一个小脚本而且我没有意识到//= require turbolinks
需要在它下面