[jquery] 모든 요소에서 클래스를 제거하는 방법 jquery

다음과 같이 요소의 클래스를 변경하고 있습니다.

  $("#"+data.id).addClass("highlight")

아래 목록이 주어집니다.

 <div id="menuItems">
 <ul id="contentLeft" class="edgetoedge">
 <li  class="sep" ">Shakes and Floats</li>
 <li id="297"><a href="#" onClick="cart('297','add')"><small>$5.00</small><b>Vanilla</b>     </a></li>
 <li id="298"><a href="#" onClick="cart('298','add')"><small>$5.00</small><b>Peanut Butter</b></a></li>
 <li id="299"><a href="#" onClick="cart('299','add')"><small>$5.00</small><b>Combo</b></a></li>
 <li id="300"><a href="#" onClick="cart('300','add')"><small>$5.00</small><b>Chocolate</b></a></li>
 <li id="301"><a href="#" onClick="cart('301','add')"><small>$5.00</small><b>Strawberry</b></a></li>
 <li id="303"><a href="#" onClick="cart('303','add')"><small>$5.00</small><b>Banana</b></a></li>
 <li id="304"><a href="#" onClick="cart('304','add')"><small>$5.00</small><b>Root Beer Float</b></a></li>
 <li id="305"><a href="#" onClick="cart('305','add')"><small>$5.00</small><b>Espresso</b></a></li>
 </ul>
 </div>

나는 이것으로 수업을 제거 할 수 있다고 생각했습니다 …

  $(".edgetoedge").removeClass("highlight");

그러나 이것은 작동하지 않습니다. 수업을 제거하려면 어떻게해야합니까?



답변

클래스에 li포함 된 태그 를 선택해야합니다 .edgetoedge. .edgetoedge하나의 ul태그 와 만 일치합니다 .

$(".edgetoedge li").removeClass("highlight");


답변

시도 : $(".highlight").removeClass("highlight");. 선택 $(".edgetoedge")하면 해당 수준에서만 기능을 실행합니다.


답변

이것은 highlight클래스가있는 모든 것에서 클래스를 제거합니다 edgetoedge.

$(".edgetoedge").removeClass("highlight");

나는 당신이 이것을 원한다고 생각합니다.

$(".edgetoedge .highlight").removeClass("highlight");

.edgetoedge .highlight선택은 뭔가의 자식 모든 것을 선택합니다 edgetoedge클래스와이 highlight클래스를.


답변

이것을 시도해 볼 수 있습니다.

 $(".edgetoedge").children().removeClass("highlight");


답변

$(".edgetoedge>li").removeClass("highlight");


답변

모든 요소에서 jquery의 클래스를 제거하는 가장 좋은 방법은 요소 태그를 통해 대상을 지정하는 것입니다. 예 :

$("div").removeClass("highlight");


답변