2013-10-14 2 views
1

두 개의 div가 있습니다. 하나는 검정색 배경과 하나는 보라색입니다. jquery를 사용하여 검은 색 div를 페이드 아웃하고 보라색을 페이드 아웃합니다. 그러나 둘 다 동시에 일어나는 것처럼 보인다.Jquery fadeOut 대기열

제 질문은 보라색 div가 완전히 사라져 버린 후에 만 ​​보라색 div가 사라지게 만드는 방법입니다. 큐 메소드에 대해 들어 봤지만 사용법이 명확하지 않습니다. 이

$("div.black").fadeOut(function(){ 
    $("div.purple").fadeIn(); 
}); 
+0

추가 콜백'fadeOut' 및 콜백에서'fadeIn' 보라색 DIV. 검은 색이 사라지면 'fadeIn'이 발생합니다. – SachinGutte

+0

답변과는 무관하지만 절대적으로 필요한 경우가 아니면 선택기를 tagname으로 한정해서는 안됩니다. 어떤 이점도 제공하지 않으며 느린 선택자를 만듭니다. – PlantTheIdea

답변

10

당신은 함수와 밀리 초에서 대기하는 시간이 걸립니다에서는 setTimeout을 사용하여 고려할 수

$("div.black").fadeOut(400,function(){ 
    $("div.purple").fadeIn().queue(); 
}); 
+3

젠장, 빨리 대답 해! : D –

+1

나를 이길! 잘했다. – PlantTheIdea

+1

나를 이길 .. 좋은 선생 –

3

처럼

$("div.black").fadeOut(); 
$("div.purple").fadeIn().queue(); // <-- purple div still trys to fade in 
// while black div is fading out. 
// I need the purple div to wait 
// until that black div has completely faded out. 
0

콜백을 사용하여이보십시오. 이런 식으로 작동해야한다고 생각합니다 :

$("div.black").fadeOut(500); 
setTimeout(function() { 
    $("div.purple").fadeIn() 
}, 600) 
2

fadeIn/fadeOut은 매개 변수 중 하나로서 콜백 함수를 사용합니다. 그 기능은 애니메이션이 완료되는 즉시 실행됩니다

$(".black").fadeOut(function() { 
    // this will run once the fadeOut animation is complete 
    $(".purple").fadeIn(); 
}); 

바이올린 : 블랙 DIV에http://jsfiddle.net/fAbBn/