【发布时间】:2016-09-05 17:43:04
【问题描述】:
我正在开发 Rails Gem,它的部分功能将 javascript 跟踪代码注入到 rails 视图/页面的 HTML 正文中。
但是,Turbolinks 给了我一个问题。我的跟踪代码脚本在具有整页刷新的页面上运行良好,但对于没有刷新的页面,该脚本不会运行(尽管我可以看到它出现在 HTML 正文中)
没有 Turbolinks,一切正常,但我知道很多人都在使用它,所以想找到一个解决方案来使用它(所以 Jquery.turbolinks gem 并不是真正的解决方案)
这是我到目前为止所尝试的。 (我已经安慰记录了语句“工作?”以查看 turbolinks:load 事件是否真的在我期望的页面上触发,并且确实如此。所以现在只是不确定为什么脚本'trackingCode'函数不会触发要么。)
var trackingCode;
trackingCode = function() {
// my javascript code
};
$(document).ready(trackingCode)
$(document).on('page:load', trackingCode)
$(document).on('ready turbolinks:load', trackingCode);
$(document).on('ready turbolinks:load', console.log('working?'))
希望这足够清楚,但如果需要更多信息,请告诉我。
谢谢
【问题讨论】:
-
为什么不把函数作为调用的一部分,而不是自己关闭呢?
$(document).on('ready turbolinks:load', function() { ... }); -
谢谢,我试过了,但效果不大。
标签: javascript ruby-on-rails ruby turbolinks