问题描述
我按照指示实施了hotjar(即,将下面的代码复制粘贴到页面<head>
中),但是hotjar javascript只出现在对该网站的首页访问中,因为它位于<head>
中,这意味着当涡轮链接打开时,它只会加载一次。
有什么办法可以使turbolink保持打开状态,但是具有预期的hotjar脚本功能吗?
我可以看到some discussion,但没有清晰的分辨率
供参考:
<script>
(function(h,o,t,j,a,r){
h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
h._hjSettings={hjid:2019490,hjsv:6};
a=o.getElementsByTagName('head')[0];
r=o.createElement('script');r.async=1;
r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
a.appendChild(r);
})(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
</script>
解决方法
我相信您可以做类似的事情
<script>
document.addEventListener("turbolinks:load",function(event) {
(function(h,o,t,j,a,r){
h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
h._hjSettings={hjid:2019490,hjsv:6};
a=o.getElementsByTagName('head')[0];
r=o.createElement('script');r.async=1;
r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
a.appendChild(r);
})(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
})
</script>
在每次页面加载时触发代码