2010-02-17 4 views
4

현재 클릭 된 요소를 격리하면서 자식 요소를 변경하는 방법이 있는지 알고 싶었습니다. 지금까지는 다음과 같이 클릭 이벤트 처리기를 사용하여 간단한 순회를 수행했습니다.현재 클릭 한 요소를 제외한 모든 요소 조작

내가 가지고있는 것은 <ul>에있는 링크이며 탭으로 취급하고 있습니다. 내가하려고하는 것은 현재 선택된 <li>에 클래스를 추가하는 동시에리스트의 다른 모든 클래스에서 클래스를 제거하는 것입니다. <li> 전환 처리를 먼저 수행해야하며 트래버스가 내부로 이동해야합니다.

$('div.hd ul li').click(function() { 
    $('div.hd ul li').not(this).hide(); 
    $(this).show(); 
}); 

답변

6
$('.hd > ul > li').click(function(){ 
    $(this).addClass('myClass').siblings().removeClass('someClass'); 
}); 

주에게 닉과 I의 솔루션 사이의 선택의 차이를 - 내에서만 잡아 것입니다 각 레벨에서 아이들을 직접 지내며 자식을 모두 움켜 잡습니다 ul li 자손.

0

다음과 같이 내 목표는

$(function() { 
    $(".hd ul li").click(function(){ 
    $(this).addClass("current").siblings().removeClass("current"); 
    }) 
}); 
2

이 시도 : : 이것처럼

관련 문제