Adobe分析可防止点击链接

时间:2018-02-23 15:29:32

标签: javascript adobe-analytics

我正在开发一个需要实施Adobe Analytics的网站。这是有效的,但由于未知原因,我的一些链接无法通过启用adobe分析的常规方式访问(它们是我删除Adobe Analytics脚本和引用时)。

我需要双击链接才能访问内容,我通常只需要点击一下即可访问内容。此外,当我第一次点击元素时,它会触发对adobe分析的网络调用。第二个clic触发元素的clic。

您可以在下面找到工作链接的摘要,而不是工作链接。它们非常相似,我无法找到行为不同的原因。

我正在使用jquery来管理我的活动,这是一个示例:

(function ($) {

  var userId = $("head").data("user-id");
  if (userId === undefined || userId === "") {
    userId = "none";
  }

  $(document).ready(function () {
    digitaldata = {
      site: {
        platform: window.navigator.platform,
        language: window.navigator.language,
        environnement: ""
      },
      page: {
        pagename: document.title,
        primarycategory: "",
        subcategory: "" 
      },
      user: {
        userid: userId,
        connectionstatus: "" 
      },
      clic: {
        name: "",
        type: "",
        category: ""
      }
    };

    $(".participation").on("click", function () {
      var name = $(this).data("id");
      digitaldata = {
        'clic.name': name,
        'clic.type': 'liens_internes',
        'clic.category': 'promo_interne'
      };
      _satellite.track('clic_je_participe');
    });

    $('.advantage').on('click', function () {
      var title = $(this).data("title");
      digitaldata = {
        'clic.name': title,
        'clic.type': 'liens_internes',
        'clic.category': 'promo_interne'
      };
      _satellite.track('clic_profiter_avantage');
    });

    _satellite.pageBottom();
  });
}(jQuery));

工作链接(访问内容只需点击一下)

<nav class="menu-inner">
  <ul class="nav">
    <li class="link-account">
      <a href="/site">
        <span class="icon-arrow-left"></span>Mon compte
      </a>
    </li>
    </li>
          <li>
      <a href="https://store.site.com/" target="_blank">
          Store
        <span class="icon-chevron-right-slim"></span>
      </a>
    </li>
  </ul>
</nav>

非工作链接(2次点击以触发链接)

<div id="wrapper-inner-subnav" class="menu-inner-subnav-wrapper">
    <div id="scroller">
        <ul class="z-1 list-unstyled">
            <li>
                <a href="/site/souscriptions" target="" class="active">
                    <span></span>
                    Souscriptions
                </a>
            </li>
            <li>
                <a href="/site/avantages" target="" class="">
                    <span></span>
                    avantages
                </a>
            </li>
            <li>
                <a href="/site/game" target="" class="">
                    Game
                </a>
            </li>
        </ul>
    </div>
</div>

你知道这种奇怪的行为吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

从表面上看,要么您没有发布足够的上下文,要么我认为Adobe Analytics(AA)跟踪不是问题。您的点击事件监听器的css选择器与您发布的任何html代码段中的任何内容都不匹配,因此点击事件回调不会在点击其中的任何内容时触发。

所以,要么你没有发布足够的上下文(也许你的css选择器匹配DOM / xpath链中更高的东西),否则你的问题就在别处。

但即使假设它们确实触发,您仍然需要提供有关如何设置您正在呼叫的直接呼叫规则(DCR)的一些上下文。 DTM不提供任何用于阻止DCR传播/冒泡的内容,但您可能在其中有一些自定义代码。

在旁注中,我注意到你将_satellite.pageBottom()隐藏在document.ready回调中。你不应该这样做。这会引起问题  并且通常限制DTM功能(但几乎肯定与此无关)。

DTM页脚代码应直接放在页面上,不得包装任何内容。理想情况下,它应该是脚本标记块中的唯一内容,以防止同一脚本块中的其他代码失败,从而可能导致DTM Footer脚本执行(反之亦然)。 Iow你应该是这个,一个人(你可以把它包装在try..catch中,如果你想的话)。

<script>
_satellite.pageBottom();
</script>

顺便说一句,如果您不这样做,Adobe将不支持您的实施,如果这是您关心的事情(您应该,因为Adobe Analytics需要花费很多钱!)

显然这会影响您的初始digitalData对象可用性,因此您也必须移动它。