ExecJS::RuntimeError<%=javascript_include_tag'应用程序
ExecJS::RuntimeError <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
我试图使用will_paginate
gem向rails应用程序添加无限滚动,然后使用AJAX获取下一个分页页面,但我的javascript没有被呈现。
似乎是涡轮连杆造成了这个问题。当我删除涡轮链接时,错误会消失,但脚本不再运行。下面是我的日志和脚本。有人能帮我吗?
这是我从日志中得到的错误:
ActionView::Template::Error (SyntaxError: [stdin]:5:2: unexpected if):
5: <!-- had to add the script to override JS error -->
6: <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
7: <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
8: <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
9: <%= csrf_meta_tags %>
10: </head>
11: <body>
app/views/layouts/application.html.erb:8:in `_app_views_layouts_application_html_erb___2390735874352053488_70114430886900'
我的链接.js.coffee
jQuery ->
$(window).scroll ->
console.log('working')
if $(window).scrollTop() > $(document).height() - $(window).height() - 50
alert('next page')
现在,如果我去掉脚本中将滚动位置与文档高度和窗口高度进行比较的部分,代码就可以工作了。
jQuery ->
$(window).scroll ->
console.log('working')
如果您需要查看任何其他信息,我很乐意提供。
对我来说,这看起来像是缩进问题。Coffeescript对空格敏感。尝试
jQuery ->
$(window).scroll ->
if $(window).scrollTop() > ($(document).height() - $(window).height() - 50)
alert('next page')
这里的区别是
- 将
scroll
方法调用缩进到jQuery
onReady函数中 - 在
if
下缩进alert
至于涡轮链接的问题,你不能简单地使用jQuery ->
(onReady快捷方式)来加载所有内容。您可能需要添加另一个侦听器。
所以不是:
jQuery ->
$(window).scroll ->
...
你可以试试这样的东西:
onPageReady = ->
$(window).scroll ->
if ...
$(document).ready(onPageReady)
$(document).on('page:load', onPageReady)
非常像这里描述的:Rails4:如何将$(document).ready()与turbo链接一起使用
希望这能有所帮助。
相关文章:
- Setting default onclick behavior for <img> tag in gene
- AngularJS ng include dons'不起作用
- ng include导致角度问题
- AngularJS ng include won'不知什么原因不起作用
- 在使用cq:include包含外部JS之前,如何在JSP中包含全局JS变量
- Webscratching自动化如何在没有链接TAG的情况下模拟点击HREF链接
- 如何将动态文件名传递给ng-include
- 覆盖“;X-Robots-Tag:noindex“;在汤博乐
- 有没有办法在AngularJS中强制重新加载递归ng-include
- Javascript检测TAG中的完整URL
- jade/pug是否可以在include语句中使用变量
- 使用ng-include渲染Angular模板时出现问题
- 每个ng-include模板都有单独的变量
- 如果在include文件中使用连接,Jquery ajax调用将不起作用
- AngularJS:如何使用ng-include将javascript文件加载到部分中
- JSF ui:include and getElementById
- 阻止“ng include”创建孤立的作用域.AngularJS
- 什么时候字符串不是字符串?当它没有 include() 方法时
- 将 jQuery 代码翻译成普通的 JavaScript for Google Tag Manager
- 如何在javascript中使用jsp include tag