未加载JavaScript代码(仅限第一次)

时间:2013-10-10 05:51:07

标签: javascript jquery html ruby-on-rails

首次访问以下网址时,大多数javascript代码未加载:

http://goo.gl/PxsVhZ

(“为什么选择我们?”下面的图片没有动画)

但是如果刷新页面,javascript将被加载并正常运行。

使用 RoR 创建项目,并使用 capistrano 进行部署(使用资产编译)。 Apache用作代理并将数据发送到Web服务器(独角兽)。

该网站仍在开发中(英文翻译也是......),感谢您的理解。

编辑:如果您在第一次访问时出现动画,请单击“主页”→“主页”,然后单击“主页”→“为什么选择我们”... javascript应该被破坏。

如果有人有任何想法,我会很高兴听到它!谢谢

1 个答案:

答案 0 :(得分:3)

不要将您的Javascript放在页脚中。它应该在app/assets/javascripts/myfile.js之类的文件中,然后在带有//= require myfile的application.js中包含此文件。原因 - 当我们从一个页面导航到另一个页面时,常见的模板(如页眉和页脚)不会仅再次加载主体更改(您可以直观地观察)。因此,页脚中的javascript会保留在HTML源代码中,但在第二页加载时不会执行。

P.S。有一些解决方案http://blog.steveklabnik.com/posts/2013-06-25-removing-turbolinks-from-rails-4或github.com/kossnocorp/jquery.turbolinks,要了解问题和解决方案Rails Jquery doesn't work on other pages