Turbolink可以防止正常$(document).ready()事件在除初始加载之外的所有页面访问中触发链接答案中的解决方案均不能与Rails 5一起使用。像以前的版本一样,如何在每次访问页面时运行代码?
$(document).ready()
ready无需监听事件,而是需要每次访问页面时都挂接到Turbolinks触发的事件。
ready
不幸的是,Turbolinks 5(Rails5中出现的版本)已被重写,并且没有使用与以前版本的Turbolinks相同的事件名称,从而导致回答失败。现在有效的方法是像这样监听turbolinks:load事件:
$( document ).on('turbolinks:load', function() { console.log("It works on each visit!") })