javascript - 在单独的 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 脚本文件运行,而不是应该放在头部的脚本?如果它也能加载异步就好了。
解决方案
将 的内容<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>
推荐阅读
- c# - 双精度值设置为 +Infinity 或 NaN
- html - MVC 4 上的 HTML 表问题 - 使用 jQuery 动态删除行
- flutter - 如何使用自定义小部件加入字符串列表
- twitter - 使用 Twitter v2 API 扩展搜索结果的问题
- javascript - 基于文本字段中首字母的条件 HTML 表单
- powershell - 使用powershell读取xml文件并将键值存储在哈希表中
- r - ggplot中的颜色编码多个条件
- dropdown - 在 powerapps 中,如何添加下拉组件,以便在任何屏幕上,用户都可以从该下拉列表中选择项目并将其保存?
- reactjs - 在加载相同组件但具有不同数据的路由之间反应导航滑动
- node.js - 使用一个 JSON 中的值作为另一个 JSON 中的键