Rails 4:使用 Turbo-Links 增强 jQuery 事件功能
在 Rails 4 应用程序中组织 JavaScript 文件时,遇到这种情况并不罕见jQuery 的“ready”事件的问题。启用 Turbo-Links 后,此事件无法在后续点击时触发,从而使 read(function($) {} 内的事件处理程序处于非活动状态。
要解决此挑战,解决方案涉及实现 Rails 特定的侦听器或利用 Rails 自己的机制来确保事件功能。
一种有效的方法是在 CoffeeScript 或 JavaScript 中定义函数:
ready = -> ...your coffeescript goes here... $(document).ready(ready) $(document).on('page:load', ready)
This方法使用 page:load 事件,涡轮链接在页面加载后触发。
对于 Rails 5 应用程序(使用 Turbolinks 5),page:load 事件已替换为 Turbolinks:load,该事件在初始时触发因此,以下事件监听器就足够了:
$(document).on('turbolinks:load', function() { ...your javascript goes here... });
通过实现这种方法,jQuery 事件功能可以与无缝集成。涡轮链接,确保初始和后续页面加载时的事件处理。
以上是如何确保 jQuery 事件与 Rails 4 和 Turbo Links 一起正常工作?的详细内容。更多信息请关注PHP中文网其他相关文章!