查找某些类的链接并添加javascript链接

时间:2012-02-29 19:36:30

标签: jquery google-analytics

尝试做两件事:

1)查找附加了“下载”类的链接。 2)如果是这样,请在链接中添加一些Google事件跟踪代码

作为一种测试手段,这是我到目前为止所拥有的:

​<a href="#" class="download">Test</a>

$(document).ready(function(e) {
if ($(a).is('.download')){
        $(a).append('onclick="_gaq.push(['_trackEvent', 'Podcasts', 'Download', 'Title']);"');
        }
}

似乎无法让这个工作,虽然我认为(希望)我有正确的想法。有什么建议吗?

提前致谢!

3 个答案:

答案 0 :(得分:2)

$(function() {
   $('a.download').click(function(e) {
    e.preventDefault();
     var $a = $(this);
      // $a is the anchor that was clicked. you can access attributes or its text to populate the _gaq.push call below.  e.g. var text = $a.text();
     _gaq.push(['_trackEvent', 'Podcasts', 'Download', $a.attr('href')]);
   });
});

答案 1 :(得分:1)

使用班级选择器代替is()。此外,您的代码将给出js错误,因为a未定义,因为它周围没有引号,所以它将被视为未定义的变量。

$(document).ready(function(e) {
    $('a.download').click(function(){
         _gaq.push(['_trackEvent', 'Podcasts', 'Download', this.href]);
         return false;
    });
});

类选择器引用 - http://api.jquery.com/class-selector/

旁注is()检查当前匹配的元素集与选择器,元素或jQuery对象,如果这些元素中至少有一个与给定的参数匹配,则返回true。

答案 2 :(得分:0)

$('.download').on('click', function(){
          _gaq.push(['_trackEvent', 'Podcasts', 'Download', 'Title']);
        });

这应该做你想要的。