ruby-on-rails – Turbolinks和3D派对插件问题?
发布时间:2020-12-17 01:36:32 所属栏目:百科 来源:网络整理
导读:我有网站 http://www.optimapo.ru/ 我安装了一些3d派对脚本: 在线聊天( https://www.jivochat.com/)和yandex analitics. 但由于涡轮连接,它们无法正常工作. 例如,实时聊天仅出现在主页上.但是当我们转到使用turbolinks加载的另一个页面时,它消失了. 在关闭b
我有网站
http://www.optimapo.ru/ 我安装了一些3d派对脚本: 在线聊天( https://www.jivochat.com/)和yandex analitics. 但由于涡轮连接,它们无法正常工作. 例如,实时聊天仅出现在主页上.但是当我们转到使用turbolinks加载的另一个页面时,它消失了. 在关闭body标签之前,我在代码中包含脚本 <!-- BEGIN JIVOSITE CODE {literal} --> <script type='text/javascript'> (function(){ var widget_id = '2qq06akKwZ';var d=document;var w=window;function l(){ var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = '//code.jivosite.com/script/widget/'+widget_id; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s,ss);}if(d.readyState=='complete'){l();}else{if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})();</script> <!-- {/literal} END JIVOSITE CODE --> <!-- Yandex.Metrika counter --> <script type="text/javascript"> (function (d,w,c) { (w[c] = w[c] || []).push(function() { try { w.yaCounter39034390 = new Ya.Metrika({ id:39034390,clickmap:true,trackLinks:true,accurateTrackBounce:true,webvisor:true,trackHash:true,ut:"noindex" }); } catch(e) { } }); var n = d.getElementsByTagName("script")[0],s = d.createElement("script"),f = function () { n.parentNode.insertBefore(s,n); }; s.type = "text/javascript"; s.async = true; s.src = "https://mc.yandex.ru/metrika/watch.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded",f,false); } else { f(); } })(document,window,"yandex_metrika_callbacks"); </script> <noscript><div><img src="https://mc.yandex.ru/watch/39034390?ut=noindex" style="position:absolute; left:-9999px;" alt="" /></div></noscript> <!-- /Yandex.Metrika counter --> </body> 那么如何使脚本与turbolinks一起工作呢? 解决方法
我不认为这是如何实现您所包含的代码段的实现方式.让我们看看它,我把它放在多行上以便于阅读,但这就是全部:
var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = '//code.jivosite.com/script/widget/'+widget_id; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s,ss); 如果你看一下turbolinks的兼容性,它报告的问题之一就是附加到head:http://reed.github.io/turbolinks-compatibility/的自加载脚本 我不知道document.getElementsByTagName(‘script’)[0]在你的页面上的位置,但很有可能它在头脑中,因为它是页面上的第一个脚本.您可以更改为片段插入到身体的末端吗? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |