Javascript 使用Jquery查找已单击项的类

Javascript 使用Jquery查找已单击项的类,javascript,jquery,css-selectors,Javascript,Jquery,Css Selectors,我有以下代码: $(".perf-row").click(function(e) { if (e.target.tagName.toLowerCase() == "a") { pageTracker._trackPageview($(this).attr("rel")); return true; //link clicked } else { window.open($(this).attr("rel"));ret

我有以下代码:

    $(".perf-row").click(function(e) {
      if (e.target.tagName.toLowerCase() == "a") {
        pageTracker._trackPageview($(this).attr("rel"));
        return true; //link clicked
      } else {
        window.open($(this).attr("rel"));return false;
      }
    }); 
如果e.target.tagName.toLowerCase==a,我还想添加或类等于价格,则添加到条件语句中

我不太确定如何做到这一点,我似乎找不到clicked元素的类,它将是表行中的td

我试过$this.class、$this.class,但都没用


非常感谢您的帮助

要查看元素是否具有class.price,请使用$.hasClass方法

您可以尝试:

$(this).attr("class");

但这将返回应用于元素的所有类的名称。

您可以将两个测试合并到一个jQuery命令中:

if( $(e.target).is('.price, a') ) { .... }
测试目标是否具有类price,或者是a标记,或者两者都是。如果您想测试它是否是一个a标记并具有price类,您可以使用以下方法:

if( $(e.target).is('a.price') ) { .... }

更新:我可能误解了你的问题。如果要将第二个测试添加到相同的If测试中,请使用我的代码。如果要添加else If,请使用其他答案中解释的.hasClass方法。

此处不需要点前缀。你说得对,Joel。我是从选择器的角度考虑的。更新:由于jQuery有一个测试类的方法,这只是一个不正确的答案,尽管它确实返回了类。
if( $(e.target).is('a.price') ) { .... }