像这样的Javascript代码
document.addEventListener("turbolinks:load", function() {
$("p#hide_if_js").hide();
});
当我在页面之间点击或使用浏览器的后退按钮时,它与turbolinks一起正常工作。但是,当我刷新页面时,javascript代码不会加载。如果我多次刷新,什么也不会发生,但是如果我单击链接到不同的页面并返回到该页面,则javascript代码现在已加载。
看起来turbolinks:load在大多数事件上都有效,但不适用于页面重新加载。文档说它“在初始页面加载后仅触发一次,并在每次Turbolinks访问后再次触发”。出了什么问题?
我正在使用jquery.turbolinks gem和相关的compatibility代码。
function() { $("p#hide_if_js").hide(); });
,并在需要使用它的地方添加以下内容:document.addEventListener("turbolinks:load",func) document.addEventListener("ready",func)
。 - uzaif