首页 > 解决方案 > 在单独的 JavaScript 文件中运行 Google 跟踪代码管理器脚本?

问题描述

我希望将应放置在<head>.html 页面中的 Google 跟踪代码管理器代码放在单独的 JavaScript 文件中。

类似这样的东西:<script src="/js/tagmanager.js"></script>

应该放在头部的代码,由google提供:

<!-- Google Tag Manager -->
<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=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXX');</script>
<!-- End Google Tag Manager -->

我将如何重写该代码以从 tagmanager.js 脚本文件运行,而不是应该放在头部的脚本?如果它也能加载异步就好了。

标签: javascriptgoogle-tag-manager

解决方案


将 的内容<script>放入您的 tagmanager.js 文件中:

(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-XXXX');

然后像这样加载它<script async src="/js/tagmanager.js"></script>


推荐阅读