javascript - Rails 4 与 CoffeeScript,不需要的 jquery 可排序分离

标签 javascript jquery ruby-on-rails jquery-ui

我在 Rails 4 上使用 ruby​​ 和 jquery-ui-rails gem。有些列表具有可排序的 jquery 功能。

$ ->  
  $('#projects').sortable
        handle: '.handle'
        opacity: 0.4
        update: ->
            $.post($(this).data('update-url'), $(this).sortable('serialize'))

这是我的代码,未应用制表符缩进。

问题:

列表实际上在第一个连接项目页面上工作,我将列表连接到显示页面, 然后我单击返回链接。无法排序

发生了什么?

最佳答案

看来您已启用涡轮链接。在这里阅读有关它们的信息:github/rails/turbolinks .

问题是,当您通过单击更改页面时,turbolinks 仅通过 ajax 加载新页面并更新当前页面。无需重新加载任何 css 和 js。因此 $ -> 在首次加载后将不起作用。

此问题有两种解决方案:

首先,使用 document.addEventListener "page:load", -> 而不是 $ ->

或者第二,从 Gemfile 中删除 Turbolinks gem,并从 application.js 中删除其 require

关于javascript - Rails 4 与 CoffeeScript,不需要的 jquery 可排序分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19608165/

相关文章:

javascript - 比较对象数组 : Ramda way

php - 如何使用 gmail 上下文小工具访问电子邮件附件

ruby-on-rails - pundit rspec - 未初始化的常量 UserPolicy,为什么?

ruby-on-rails - rails 协会 - has_many 与 has_and_belongs_to_many

javascript - 从嵌套 div 中选择 HTML 内容

javascript - 从下/上向左/右滑动切换

javascript - JSON 到 html 表格水平

jquery - 在 IE 7 中滑动 rtl 和 ltr 的问题

ruby-on-rails - Bundler 无法使用弹性 beantalk 进行部署

javascript - 主干普通模型返回未定义的 'set'