选择器独家css特殊情况

时间:2013-08-26 09:56:47

标签: jquery

我正在使用:

$(".header.nav.nav-user").click(function(){});

但是当我将css更改为“.header .nav .disable .nav-user”时,我不想触发点击事件。

但在这种情况下,当{c}更改为$(".header.nav.nav-user")时,".header .nav .disable .nav-user"也会被触发。

我如何排除这种情况?

我试过了:

$(".header.nav.nav-user :not(.disable)")

$(".header.nav.nav-user").not(".disable"),

但两次都没能得到理想的结果。

请告诉我如何做到这一点。

感谢您的帮助!感谢。

更新:情况如此 有时是:(我想触发点击事件)

<div class="header">
  <div class="nav">
      <dt class="nav-user">
       </dt>
   </div>
</div>

有时是:(我不想触发点击事件)

 <div class="header">
  <div class="nav">
   <dl class="disable">
      <dt class="nav-user">
       </dt>
    </dl>
   </div>
</div>

并且更改是使用其他javascript,而不是更改该代码。

3 个答案:

答案 0 :(得分:0)

试试这个

$(".header.nav.nav-user").not(":disable")

答案 1 :(得分:0)

添加禁用类

时,需要添加disabled属性

例如:

$('.btn').click(function () {
    alert('clicked');
    $('.btn').addClass('disable');
    $('.disable').attr('disabled', 'disabled');
});

这将禁用“禁用”类

的链接

答案 2 :(得分:0)

@dude,你在这里是正确的:

$(".header.nav.nav-user :not(.disable)")

除了nav-user和之间不应该有任何空格:

$(".header.nav.nav-user:not(.disable)")

Fiddle