有时候javascript运行得很完美,有时候在RubyonRails4中就不是了
我在日历中使用datepicker,它显示完美,但不显示更改月份的箭头按钮。有时也会出现这样的错误:有时候javascript运行得很完美,有时候在RubyonRails4中就不是了,javascript,ruby-on-rails-4,datepicker,sprockets,turbolinks,Javascript,Ruby On Rails 4,Datepicker,Sprockets,Turbolinks,我在日历中使用datepicker,它显示完美,但不显示更改月份的箭头按钮。有时也会出现这样的错误: ActionController::RoutingError (No route matches [GET] "/assets/images/ui-icons_ef8c08_256x240.png") datepicker.js $(document).ready(function(){ $('[data-behaviour~=datepicker]').datepicker(); })
ActionController::RoutingError (No route matches [GET] "/assets/images/ui-icons_ef8c08_256x240.png")
datepicker.js
$(document).ready(function(){
$('[data-behaviour~=datepicker]').datepicker();
});
css
对不起,问题太长了,如果我遗漏了什么,请告诉我
非常感谢
编辑:
我注意到,当我删除public/assets目录,然后输入rake-assets:precompile时,这次没有显示错误,但仍然没有显示箭头。这看起来像是默认情况下添加到rails 4的turbolinks问题。在turbolinks$(文档)中,ready并不总是启动。您可以在此处查看有关TurboLink的更多信息以及如何使用它们的一些建议,也可以添加到一些链接中
data: { no_turbolink: true }
如果不需要,也可以从文件中删除TurboLink。还要检查您是否在中有ui-icons\u ef8c08\u 256x240.png
/assets/images/
您也可以按照这里的说明操作。基本上,您必须告诉javascript也在page:load上执行 归功于 咖啡:
ready = ->
...your coffeescript goes here...
$(document).ready(ready)
$(document).on('page:load', ready)
Javascript:
var ready;
ready = function() {
...your javascript goes here...
};
$(document).ready(ready);
$(document).on('page:load', ready);
首先,安装
jquery turbolinks
gem。然后,不要忘记将包含的Javascript文件从应用程序.html.erb
主体的末尾移动到它的
同样,如果出于速度优化的原因将应用程序javascript链接放在页脚中,则需要将其移动到标记中,以便在加载标记中的内容之前加载。这个解决方案对我很有效。是的,我想turbolinks在我读到这篇文章的地方引起了一些问题。但是兄弟,我的图像存在于/assets/images/中,我也尝试了rake assets:precompilec你能在使用这个图像的地方添加一个css吗?Turbolinks负责奇怪的javascript工作。图标问题与css中图像的错误路径或链轮应用程序中的某些要求有关。cssso我该怎么办?