仅为当前父母添加课程

时间:2018-10-18 09:22:03

标签: jquery

在给定列表中,我想当我单击“ click”时,那么当我在第二个“ li”下面单击“ click”时,“ red”类应仅适用于当前的“ li”,然后同时应用这两个“ li”如何防止这种情况。

$(".thumb").click(function() {
  $(this).closest(".scroll-demo").addClass("red");
});
.red {
  color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<ul>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
</ul>

3 个答案:

答案 0 :(得分:2)

添加$(“。scroll-demo”)。removeClass(“ red”);

 $(".thumb").click(function() {
 $(".scroll-demo").removeClass("red");
 $(this).closest(".scroll-demo").addClass("red");
 });

答案 1 :(得分:0)

我认为您必须使用parent()仅将类添加到父元素。并将类删除为其他元素,您可以使用siblings()

$(".thumb").click(function() {
  $(this).parent().addClass("red").siblings().removeClass("red");
});
.red {
  color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<ul>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
  <li class="scroll-demo">List 1 <a href="javascript:;" class="thumb">Click</a></li>
</ul>

答案 2 :(得分:0)

只需先从所有锚点中删除红色类别,然后将其添加到当前目标锚点即可。

 protected void onActivityResult (int requestCode, int resultCode, Intent intent) 
 {
   super.onActivityResult(requestCode, resultCode, intent);

    if(intent != null)
    {
       if(resultCode == Activity.RESULT_OK)
       {
          String extraString = intent.getStringExtra(STRING_EXTRA);

           if(extraString.equals(CAMERA))
           {
              // ... i. e.
              switch (requestCode)
              {
                  case MY_FACE_PHOTO:
                  {
                       // ...
                       break;
                  }
                  case MY_CAR_PHOTO:
                  {
                       // ...
                       break;
                  }
                  case MY_HOUSE_PHOTO:
                  {
                      // ...
                      break;
                  }
                  default:
                  {
                      // ...
                      break;
                  }
              } 
           }
           else if(extraString.equals(GALLERY))
           {
              // ...
           }
       }
       else
       {
           // ...
       }
    }
 } 
$(".thumb").click(function(e) {
  e.preventDefault();
  $('.scroll-demo a').removeClass('red');
  $(this).addClass("red");
});
.red {
  color: red;
}