$(document).ready(function() { Rails Turbo-links
$(document).ready(function() { Rails Turbo-links
使用涡轮链接运行此内容时遇到问题...
$(document).ready(function() {
var n = '#nav', no = 'nav-open';
$('#nav-menu').click(function() {
if ($(n).hasClass(no)) {
$(n).animate({height:0},300);
setTimeout(function(){
$(n).removeClass(no).removeAttr('style');
},320);
}
else {
var newH = $(n).css('height','auto').height()
;
$(n).height(0).animate({height:newH},300);
setTimeout(function(){
$(n).addClass(no).removeAttr('style');
},320);
}
});
});
我尝试过这个没有任何运气:
var ready;
ready = function() {
...your javascript goes here...
};
$(document).ready(ready);
$(document).on('page:load', ready);
对不起,我对Javascript没用!
在
最后两行添加()
以要求它们执行
$(document).ready(ready());
$(document).on('page:load', ready());
说明:ready
是一个变量,表示您定义的函数。如果你叫它的名字ready
,它将返回函数定义。如果调用它来执行,则需要添加()
。
据我了解,我建议使用jQuery-Turbolinks,这是您安装的使JS与Turbolinks一起工作的gem
我们和你也有类似的问题,因为我们会有
$(document).ready(function() {});
它不会触发 - 这是由于Turbolinks加载文档一次,然后欺骗JS认为它没有重新加载引起的
我会尝试安装 gem 并查看它是否有效:
宝石文件:
gem 'jquery-turbolinks'
Add it to your JavaScript manifest file, in this order:
//= require jquery
//= require jquery.turbolinks
//
// ... your other scripts here ...
//
//= require turbolinks
相关文章:
- 如何从rails中的代码中删除新行( )
- Rails File_field最大堆栈大小
- angularjs+rails应用程序中未显示模板
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- Rails 3.2 js.erb文件转义js
- Rails-JQueryUIAutcomplete和AJAX不工作,可以't连接到数据库
- Jquery:代码在rails中的页面加载时未执行
- Rails操作只调用一次,但我在ajax中每秒钟都调用一次
- Rails/Javascript链接到用于切换多个元素的函数
- 在Rails中更新Div,而不更改更新请求后的视图
- Jquery append oly获取循环Rails中的最后一个elemen
- 通过rails中的Ajax在控制器B的每个视图中渲染控制器a的视图
- 使用主干网和rails的静态页面路由
- 将JavaScript变量保存到Rails模型
- Rails:如何向用户预加载消息
- Ajax and Json with Rails
- Ajax调用ERror Cross Origin REquest:在rails中自动完成大学列表
- Rails 5:如何将 $(document).ready() 与 turbo-links 一起使用
- $(document).ready(function() { Rails Turbo-links
- Rails 4 turbo-link 阻止 jQuery 脚本工作