rails在多个页面之间共享coffeescript

时间:2016-07-31 02:18:38

标签: javascript ruby-on-rails coffeescript

我试图理解为什么这有时会起作用。我有一个名为shared.coffee的文件,其代码为

@sharedSearchButton = ->
  $('#button_search_box').click (event) ->
    event.preventDefault()
    $('#search_box').toggle()
    return
  return
$(document).ready(sharedSearchButton)
$(document).on('turbolinks:load', sharedSearchButton)

我在application.js

中导入此文件
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require shared
//= require_tree .

如果我点击一个链接,将我重定向到此代码必须工作的其中一个页面,它就可以正常工作。另一方面,如果我重新加载页面它不起作用。

更新

我发现如果我把

$(document).on('turbolinks:load', sharedSearchButton)

它适用于我在其他页面上的link_to按钮,但在刷新页面时却没有。相反,如果我写

$(document).on('turbolinks:change', sharedSearchButton)

当我刷新页面时它起作用,但是当我来自link_to

时它不起作用

0 个答案:

没有答案