2011-02-10 4 views
2

아래 jquery를 사용하여 디스플레이 div를 전환합니다. 페이지를로드 할 때 첫 번째 결과 만 활성화하려면 무엇을 추가해야합니까?jquery 함수 수정

$(document).ready(function(){ 

//Hide (Collapse) the toggle containers on load 
$(".toggle_container").hide(); 

//Switch the "Open" and "Close" state per click then slide up/down (depending on open/close state) 
$("h6.trigger").click(function(){ 
    $(this).toggleClass("active").next().slideToggle("slow"); 
    return false; //Prevent the browser jump to the link anchor 
}); 

답변

0

eq()(docs) 방법 또는 first()(docs) 방법을 사용하여 원래 선택에서 첫 번째 일치 항목을 가져올 수 있습니다.

$("h6.trigger").click(function(){ 
    $(this).toggleClass("active").next().slideToggle("slow"); 
    return false; 
}).eq(0).click(); 
// ^------^------grab the first element, and trigger the handler 

또는 대안으로

, 당신은 단지 첫 번째를 트리거 할 triggerHandler()(docs) 방법을 사용할 수 있습니다.
$("h6.trigger").click(function(){ 
    $(this).toggleClass("active").next().slideToggle("slow"); 
    return false; 
}).triggerHandler('click'); 
// -----^--------this will only trigger the click on the first element. 

이 두

당신이 다시 선택해야 할 필요성을 방지, 원래의 DOM 선택을 활용할 수 있습니다.

+0

첫 번째 경기에 애니메이션을 적용하지 않는 방법이 있습니까? 그래서 페이지가로드 될 때 이미 활성화되어 있습니다. – mwimwi76

+0

@ mwimwi76 : 핸들러를 트리거하는 대신 다음과 같이 할 수 있습니다 : .eq (0) .addClass ("active"). next(). show(); 또는 클래스를 추가하고 첫 번째 컨테이너를 숨기지 않고 시작할 수 있습니다. $ (". toggle_container"). slice (1) .hide();'* (첫 번째 컨테이너를 제외하고 모두 숨김) *'$ ("h6.trigger") click (function() {/*..*/*) eq (0) .addClass ('active'); * (활성 클래스를 첫 번째 요소에 추가) * – user113716

+0

awesome! 완벽하게 작동합니다. 감사! – mwimwi76

0

당신은 당신이 일치하는 첫 번째 H6에 등록 된 클릭 이벤트 올릴 수 : .ready()이 일을 이전 JQuery와 방법이기 때문에,

$(document).ready(function(){ 

//Hide (Collapse) the toggle containers on load 
$(".toggle_container").hide(); 

//Switch the "Open" and "Close" state per click then slide up/down (depending on open/close state) 
$("h6.trigger").click(function(){ 
    $(this).toggleClass("active").next().slideToggle("slow"); 
    return false; //Prevent the browser jump to the link anchor 
}); 

$("h6.trigger:first").trigger('click'); 

}); 
또한
0
$(function() { 
$("h6.trigger:first").addClass('active'); 
}); 

, 그 대신 $(document).ready(function(){})의 이동을 문서로드시.