我已经创建了一个Rails 4应用程序,并添加了用于图像弹出效果的fancybox库。它工作得很好,但仅当页面正在刷新时。如果用户不刷新页面,则jquery根本不起作用。我也尝试过用小的jquery方法测试它,但都是在页面刷新后才能工作。我也在使用twitter bootstrap。
我的assets/application.js文件:
//= require jquery
//= require jquery_ujs
//= require fancybox
//= require twitter/bootstrap
//= require turbolinks
//= require_tree .
$(document).ready(function() {
$(".fancybox").fancybox();
$("#hand").click(function(){
if($("#check6").is(':visible'))
{
$("#check6").hide();
}
else
{
$("#check6").show();
}
});
});
发布于 2014-03-13 16:21:16
Ian有一个很好的答案,这个答案是对它的补充(所以在我写这篇文章的时候,我不会对任何人发表评论)。
来自https://github.com/rails/turbolinks/#jqueryturbolinks:
Add the gem [gem 'jquery-turbolinks'] to your project, then add the following line to your JavaScript manifest file, after jquery.js but before turbolinks.js:
//= require jquery.turbolinks
以前我没有在列表中的正确位置添加require jquery.turbolinks
,所以它有点挑剔。然后我添加了一种新的方法,我希望它能更好地工作。
发布于 2015-05-22 01:36:23
直到我遵循了CodeWalrus和Ian的答案,我才能让事情正常工作,但对我来说,还有更多的东西要做。正如the jquery.turbolinks Readme上所描述的,顺序必须非常具体。
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//
// ... your other scripts here ...
//
//= require turbolinks
另外,as described here,如果您像我一样出于速度优化的原因将应用程序javascript链接放在页脚,您将需要将其移动到<head>
标记中,以便它在<body>
标记中的内容之前加载。
发布于 2015-12-03 01:09:07
Turbolinks是在rails中添加here.Turbolinks来提高网页性能的问题,我已经得到了这个解决方案
<%= link_to "Create New Form", sampleform_path, 'data-no-turbolink' => true %>
有关更多详细信息,请参阅this
https://stackoverflow.com/questions/17881384
复制相似问题