如果设置了Cookie,则嵌入谷歌分析

时间:2018-05-28 14:05:41

标签: javascript

我想执行这样的事情:

if (document.cookie.indexOf('cookie') > -1 ) {
  <script>...
  <script>
   window.dataLayer = window.dataLayer || [];
   etc.
}

我在其他地方读到document.write是一个糟糕的方式。

感谢。

1 个答案:

答案 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()