我想执行这样的事情:
if (document.cookie.indexOf('cookie') > -1 ) {
<script>...
<script>
window.dataLayer = window.dataLayer || [];
etc.
}
我在其他地方读到document.write是一个糟糕的方式。
感谢。
答案 0 :(得分:1)
以相反的方式包裹它。使用<script>
标记,然后使用if
:
<script>
if (document.cookie.indexOf('cookie') > -1 ) {
window.dataLayer = window.dataLayer || [];
/* ... */
}
</script>
如果没有cookie存在,脚本就不会启动。
如果您需要一些自定义标记,请使用此代码(在jQuery中,但您会明白这一点)
var head = $('head'); // Select <head>, or any other element that will wrap your script
var scriptTag = $('<script>', {async: 'async', src: 'http://google.com/...', /*... */}); // Create new element in head
head.prepend(scriptTag); // Put your new element to the end of <head>
但你真的需要吗?尝试使用jQuery.getScript()