如何仅对CSS而不是隐藏元素进行点击跟踪

问题描述 投票:0回答:2

部分完成,但是不知道如何仅单击css而不是隐藏的元素

$('[class*="button"][href*="/contact/"]').on('click', function(){
  var clicked = this;
  $('[class*="button"][href*="/contact/"]').each(function(i){
    if (this == clicked) dataLayer.push({ 'event':'Contact Us Click','Number':i});
  });
});
javascript jquery
2个回答
1
投票

您可以使用:visible jQuery选择器。

$('[class*="button"][href*="/contact/"]:visible').on('click', function(){
  var clicked = this;
  $('[class*="button"][href*="/contact/"]').each(function(i){
    if (this == clicked) dataLayer.push({ 'event':'Contact Us Click','Number':i});
  });
});

0
投票

另一种选择是使用ID(如果每个类元素都有一个ID):

$('[class*="button"][href*="/contact/"]').on('click', function(){
  var id = this.id;
  $('[class*="button"][href*="/contact/"]').each(function(){
    // find some way to get the value of i
    if (this.id == id) dataLayer.push({ 'event':'Contact Us Click','Number':i});
  });
});
© www.soinside.com 2019 - 2024. All rights reserved.