要求:捕获导航菜单单击
当前设置:
标签1:全局点击监听器,所有网页都有一个触发规则,
{{url}} matches RegEX .*
标签2:菜单点击跟踪 - 自定义HTML标记类型,所有页面和HTML都有一个触发规则:
<script type="text/javascript">
$('#top_nav_menu a').click(function(){
var target = event.target;
var parentElem = $(target).parent();
var targetHref = $(target).attr("href");
var targetClass= $(parentElem).attr("class");
dataLayer.push({
'event': 'navigation',
'eventAction': targetClass,
'eventLabel': targetHref
});
});
</script>
标签3:事件 - 菜单点击 - Universal Analytics标记类型,带有触发规则:
{{event}} equals navigation
追踪类型:活动
Category: {{event}}
Action: {{event action}}
Label: {{event label}}
宏:
数据层变量名称:eventAction
数据层变量名称:eventLabel
发生了什么:目前全局点击监听器和菜单点击跟踪正确触发但事件 - 菜单点击失败。我假设它,因为我没有正确地定位DOM元素。 DOM结构是这样的:
<nav id="top_nav_menu">
<ul class="no-list">
<li id="about" class="about"><a href="link-value">about</a></li>
<li id="services" class="services"><a href="link-value">services</a></li>
<li id="work" class="work"><a href="link-value">work</a></li>
<li id="contact" class="contact"><a href="link-value">contact</a></li>
</ul>
</nav>
我无法更改HTML或添加类,如何确保激活事件 - 菜单单击标记并推送正确的dataLayer值。
任何帮助将不胜感激。谢谢你提前。
答案 0 :(得分:0)
在数据层中推送“菜单点击跟踪”标签,您将为操作分配“$(targetClass)”,并为Label分配“$(targetHref)”,这似乎是jQuery引用(即“$” (...)“)而不是字符串。你能将它们改为变量名“targetClass”和“targetHref”吗?
希望这有帮助。