GTM 作为单例(Google 跟踪代码管理器)
GTM as Singleton (Google Tag Manager)
你好
有什么方法可以将 GTM 作为单例执行? ,我只需要执行一次 GTM。
要添加更多上下文,我的应用程序是单页应用程序(没有 uri 更改),并且内容是通过 Ajax 加载的,但是整个 HTML 会随着每次交互而变化。当内容更改时,将重新加载整个代码,重新执行 GTM 代码以获得 2 个 GTM 实例。
有解决问题的想法吗?
最后我使用了一个 javascript 变量并在执行 gtm 主代码片段之前检查它,这只是一个基本的解决方法
if(typeof gtm_on == "undefined"){
<!-- Google Tag Manager -->
(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','GTM-582XFH')
}
你好
有什么方法可以将 GTM 作为单例执行? ,我只需要执行一次 GTM。
要添加更多上下文,我的应用程序是单页应用程序(没有 uri 更改),并且内容是通过 Ajax 加载的,但是整个 HTML 会随着每次交互而变化。当内容更改时,将重新加载整个代码,重新执行 GTM 代码以获得 2 个 GTM 实例。
有解决问题的想法吗?
最后我使用了一个 javascript 变量并在执行 gtm 主代码片段之前检查它,这只是一个基本的解决方法
if(typeof gtm_on == "undefined"){
<!-- Google Tag Manager -->
(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','GTM-582XFH')
}