[英]array.push() but no results in array?
链接在这里 。
<script>
dataLayer = [];
</script>
<!-- Google Tag Manager -->
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-XXXX" // disguised GTM snippet
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<script>(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=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-PB4S9P');</script>
<!-- End Google Tag Manager -->
<script>
dataLayer.push({
'event':'nevent',
'eventCategory': 'form submissions',
'eventAction': 'saw form',
'eventLabel': '[GPI - Donation Request Form]' // e.g. Newsletter signup form - NEW SITE
});
</script>
当我访问链接并打开控制台并键入dataLayer时,我希望看到该对象。 但是我不能。
当我在页面上时,如果我剪切n粘贴dataLayer.push({});
它工作 - 我看到它添加到dataLayer
。
那么怎么可能是dataLayer
数组没有填充下面的推送内容呢?
提供的代码与您页面上的代码不匹配。
您的页面(稍微)缩小了,即它没有换行符。
这与您的行尾式注释( //
)冲突:
<script> dataLayer.push({ 'event':'nevent', 'eventCategory': 'form submissions', 'eventAction': 'saw form', 'eventLabel': '[GPI - Donation Request Form]' // e.g. Newsletter signup form - NEW SITE }); </script>
它削减了});
,导致语法错误。
不过,我确实得到了在控制台中键入dataLayer
的结果:
[
{
"gtm.start": 1438884079089,
"event": "gtm.js"
},
{
"event": "gtm.dom"
},
{
"event": "gtm.load"
}
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.