2010-08-03 4 views
0

는 I은 상기 스크립트가 웹 유저 컨트롤 내부 기입이jQuery slideDown 특정 요소를 선택 하시겠습니까?

$('.Minimize').click(function() { 
      $('.ContentTD').slideUp('slow', function() { 
       //animation complete 
      }); 
     }); 

같은 클릭 할 때 특정 요소의 slideDown anitmation 수행 JQuery와 기능을 갖는다.

페이지에 컨트롤의 인스턴스가 많은 경우에는 페이지의 모든 인스턴스에서 slideDown 함수가 실행되는 것이 문제입니다.

내가 원하는 컨트롤을 클릭하면 실행됩니다.

어떻게해야합니까? 감사

답변

1

당신은 그들이 모두있어 컨테이너에 올라가서 같이, 상대적 요소를 찾을 수 있습니다

<div class="container"> 
    <button class="Minimize">Minimize</button> 
    <div class="ContentTD">Content</div> 
</div> 

만큼 :

$('.Minimize').click(function() { 
    $(this).closest('.container').find('.ContentTD').slideUp('slow'); 
}); 

이이 같은 마크 업 뭔가를 가정 둘 다 식별 할 수있는 클래스 또는 다른 속성이있는 컨테이너 안에 있으므로 및 .find()을 사용하면 이인 경우에만 .ContentTD이됩니다.컨테이너. 또는 위의 간단한 예제와 같은 형제 인 경우 .siblings('.ContentTD') 또는 일부 기타tree traversal method을 사용하는 경우 $(this) (클릭하면 .Minimize)을 사용하고 해당 요소를 기준으로 찾을 수 있습니다.

+0

감사합니다. Nick 정확하게 원했던 것입니다. –

관련 문제