2011-04-08 3 views
3

의 친척을 찾는 최적화하는 방법 나는 종종 자신이 클릭 한 요소와 관련된 일을하려고 찾아,이 같은 보이는 문자열로 끝낼 : 나는 강력하게 의심 여행

$('input.Button').click(function(event) { 
    $(this).parent('div.Picture').parent('div.SelectOption').children('div.Options').children('p.Option').show(); 
}); 

을 부모님을 통해 DOM을 만들고 아이들을 통해 물러나는 것은 비용이 많이 드는 일이며, PITA를 쓰는 것은 말할 것도없고, 아직은 더 좋은 방법을 모릅니다. 누군가가 이렇게 좋은 것을 쓰는 방법을 말해 줄 수 있다면, 나는 그것을 감사 할 것입니다. 모든 경우에, 변화의 요소는 요소에 클릭 관련이있다, 그래서 난 그냥 할 수 없어 간단한 :

$('input.Button').click(function(event) { 
    $('p.Option').show(); 
}); 

즉, 같은 용기의 모든보다는 단지 하나를 보여 것 때문에 입력 버튼.

참고로 이것은 일반적인 예 였지만 필자는 내 작업이 이와 같은 예제로 가득 차있어서이를 최적화하는 방법을 알지 못합니다.

답변

3

나는 이것을 위해 .closest()을 사용합니다.

$('input.Button').click(function(event) { 
    $(this).closest('div.SelectOption').find('div.Options > p.Option').show(); 
});