尝试动态添加此代码
<script>
$(document).ready(function(){
var tagcodehead = "function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','{{ code }}');";
var tagcodebody = "<noscript><iframe src='https://www.googletagmanager.com/ns.html?id=GTM-MN88H8'height='0'' width='0'' style='display:none;visibility:hidden'></iframe></noscript>";
$(head).add("<script>" + tagcodehead + "</script>");
$(head).prepend(tagcodebody);
})
浏览器给我:SyntaxError:意外的EOF
这是问题 - 关闭脚本标记
$(head).add("<script>" + tagcodehead + "</script>");
有任何帮助吗? 感谢
答案 0 :(得分:5)
您无法在脚本中嵌入</script>
的文字。即使那个&#34;标签&#34;在字符串内部,它仍然终止浏览器的脚本块。你必须打破它:
$(head).add("<script>" + tagcodehead + "</scr" + "ipt>");
请记住 - 浏览器首先破解页面/代码的原始文本,并且直接了解Javascript是什么。它只能理解HTML,这意味着脚本块在块内的</script>
的第一个实例处终止,无论块中的代码如何/在哪里出现。