如果JavaScript标签是通过谷歌标签管理器插入到页面上的,那么它们的延迟程度是多少;s的自定义HTML

How delayed are JavaScript tags if they are inserted onto page via Google Tag Manager's custom HTML?

本文关键字:标签 延迟 程度 HTML 自定义 多少 谷歌 JavaScript 管理器 插入 如果      更新时间:2023-09-26

我正试图将一些自定义JS导入公司网站,由于平台的原因,该网站受到严格限制(例如,我们供应商提供的网站编辑器会自动删除任何"脚本"标签)。出于这个原因,我尝试通过带有自定义HTML的Tag Manager插入我的自定义js脚本。

它有效,尽管不可靠。有时我的脚本会加载,但大多数时候不会加载。值得注意的一点是,我们的供应商只允许我们将标签容器插入到"body"的顶部,并在"head"中有一个"script asyn"。此外,我们的GTM容器在单独的数据层上设置不正确,没有进行适当的调优。所以我的问题是:

1) 有没有一种方法可以让我在瀑布型分析中检查加载自己的脚本需要多长时间(或者其他什么方法)?

2) 标签管理器加载的脚本是否只有在页面上的所有内容都加载后才会触发?

3) 在外部js或内联中粘贴代码是加载我的自定义标记的可靠方法吗?修复dataLayer问题也会提高发射速度吗?

提前感谢!

使用GTM、使用外部文件甚至内联嵌入代码实际上没有太大区别。与其他一些标签管理器不同,GTM不从远程服务器获取标签;相反,它将所有标记打包在一个位javascript函数中,并将其链接到您的页面(您可以通过调用http://www.googletagmanager.com/gtm.js?id=GTM-XXXXXX,其中xxxxx是容器的id,制作一个本地副本并将GTM请求重定向到该本地副本-标签将像以前一样触发)。

js文件还包含所有配置的规则,这些规则决定了何时触发标记。

最早可能触发标记的时刻是页面加载,也就是浏览器渲染GTM代码的时刻。下一个(默认)点是DOM就绪,即创建了所有结构元素,但不一定加载了所有资产,然后是window.loaded,即一切就绪。页面加载后,您可以有自定义事件或点击/提交等事件。

关于您的问题:

1) 您可以像调试任何其他JS标签一样调试GTM标签(例如,在浏览器开发控制台中使用瀑布图)

2) 否。激发脚本的时间由配置的规则决定。触发标记的最早时刻是加载GTM代码的时候。但是,标记不会(默认情况下)按任何特定顺序激发。

3) GTM中有问题的任何脚本在内联粘贴时都可能出现问题。使用GTM与使用外部js文件没有太大区别,只是GTM包含许多用于评估规则和触发器的代码。