Rails 4 - 没有 JavaScript 错误但 JS 不工作

Posted

技术标签:

【中文标题】Rails 4 - 没有 JavaScript 错误但 JS 不工作【英文标题】:Rails 4 - No JavaScript errors but JS not working 【发布时间】:2016-06-21 14:44:32 【问题描述】:

我正在尝试学习 Ruby on Rails 并了解资产管道。我想一个很好的方法是在 Rails 中创建我的网站并使用它来学习。但是,在实现我的 JS 后,它似乎将其添加到文件中,但由于脚本无法正常工作(或其中一些......),所以什么也不做。

我刚刚在 Heroku 上设置了它,因为我认为这是您查看代码的最简单方法? https://secret-citadel-76066.herokuapp.com/

我还没有调用 owl carousel,所以我确信这会修复主要部分,因为它们都是 owl carousel,但不起作用的是导航,并且滚动到下一部分应该滚动,并且在底部滚动到顶部应该滚动。

但是,有些东西可以工作 - 例如滚动条(nicebar)。

有什么建议吗?

编辑:

//= require jquery
//= require jquery_ujs
//= require jquery.easing.1.3
//= require detectmobilebrowser
//= require isotope.pkgd.min
//= require wow.min
//= require waypoints
//= require jquery.counterup.min
//= require jquery.nicescroll.min
//= require gmaps
//= require materialize-sprockets
//= require common
//= require stuart-green
//= require turbolinks

注意:我删除了树,因为我想更好地控制什么时候加载

【问题讨论】:

我们查看代码的最简单方法是将相关部分复制到您的问题中。这也是首选方式。 请附上相关代码。 但老实说,我不确定什么是相关的?我没有任何相关错误(只有 jquery 错误是我没有添加的错误)但是,我想我会添加我的 application.js 吗? 请发布未按预期工作的 javascript,并说明您希望它做什么以及它的实际执行情况。 使用图像的一个有用位:Images and Rails。弹出此错误:t.owlCarousel 不是您的 application.js 文件中的函数(确保已加载所需的 js!)如果您在该 heroku 上处于生产模式,值得注意的是我有时还有其他一旦出现其他错误,事情就无法在 prod 模式下工作,即使它们继续在 dev 中与错误一起工作(即 owlCarosel 错误可能导致您的所有问题) 【参考方案1】:

我们的项目中也存在与您一样的问题。 有时我们的 js 文件不工作但没有错误。

尝试删除

//= require turbolinks

【讨论】:

我们也遇到过这种情况,这种解决方案效果很好。 (y)

以上是关于Rails 4 - 没有 JavaScript 错误但 JS 不工作的主要内容,如果未能解决你的问题,请参考以下文章

Rails 6 javascript文件没有正确抓取html元素

Rails 4:部分渲染后无法使用javascript(使用ajax)

在没有咖啡脚本的 Rails 3.2 中使用 javascript

Ruby on Rails 4 javascript未执行

如何在 Heroku 上的 Rails 4 中引用 javascript 中的图像

javascript_include_tag Rails 4 在生产中生成“/javascripts/”而不是“/assets”