【问题标题】:How do I change the version of jQuery that GTM code includes?如何更改 GTM 代码包含的 jQuery 版本?
【发布时间】:2016-10-20 20:04:18
【问题描述】:

我有一个问题,即我插入到我正在使用 Wordpress 开发的网站中的 GTM 代码引入了一个 jQuery 库的 v1.9.1,它与已经在外部声明的 jQuery 的 v1.11.3 冲突。

导致此错误出现在控制台中:

Uncaught TypeError: $ is not a function

我很确定问题出在 jQuery 脚本库中。显然错误是说 JS 应该注意使用简写方法声明 jQuery。我已经照常检查插件是否冲突,但肯定是 GTM 脚本。

jQuery v1.11.3 库在<head> 中声明,GTM 代码直接放在<body> 标记之后。

我做了一些研究,发现这些帖子来支持我的调查:

Jquery and Google Tag Manager

jQuery being loaded into gtm.js from Google Tag Manager

两篇文章都谈到了更改包含的 jQuery 库。我怎么做?第三方向我提供了 GTM 代码,但我无法访问他们的 GA 帐户。

另外,GTM 是否必须依赖于 jQuery。有没有类似“香草”的版本?

【问题讨论】:

    标签: jquery google-analytics google-tag-manager


    【解决方案1】:

    根据版权声明,GTM 样板代码确实嵌入了 jQuery 1.9.1 版本。然而,这是一个在私有(-ish)函数中运行的定制版本,并且没有声明全局“$”或“jQuery”变量。

    (short Update 我参加了 Simo Ahava(GTM 的 Google 开发专家)的研讨会,他说 GTM 不包括 jQuery,但 GTM 在其选择器引擎中使用了一些方法与 jQuery 方法非常相似,因此被认为有必要包含版权声明)。

    GTM 容器中是否有任何营销标签?如果是这样,我建议使用 Ghostery 将它们一一关闭,以查看错误是否消失(某些供应商不够考虑到在其营销标签中包含脚本库)。

    请注意,在您的链接问题“jQuery 和 Google 跟踪代码管理器”中,jQuery CDN 是从 GTM 中引用的 - 在这种情况下,它不是 jQuery 的内置版本受到干扰。

    【讨论】:

    • 抱歉,我不熟悉使用 Ghostery。是这个网站ghostery.com 吗?
    • 是的。 Ghostery 是一种广告拦截工具(请注意,他们的商业模式是收集有关通过其插件拦截的内容的数据),它允许您有选择地禁用浏览器中的营销和分析标签。
    • Ghostery 对我没有多大帮助,不幸的是我自己也搞不清楚。不错的工具。我没有选择任何额外的“营销标签”——但我又不太完全确定我在寻找什么。我觉得这是一个 WP 主题问题。
    猜你喜欢
    • 1970-01-01
    • 2014-04-12
    • 1970-01-01
    • 2017-05-18
    • 2011-08-02
    • 2016-03-30
    • 1970-01-01
    • 1970-01-01
    • 2016-10-30
    相关资源
    最近更新 更多