2012-01-10 4 views
0

안녕하세요, jQuery 함수와 js 함수를 결합하는 데 문제가 있습니다. 아래의 코드는 작동하지만, 당신이 짐작 하듯이, 나는 그 때 처음 페이드 HTML을 변경 한 다음 다시 페이드 기대하고있다.jQuery 콜백 플러스 js 함수

function updateit(a) { 
    $("#monthlyHead").fadeOut(100); 
    $("#monthlyText").fadeOut(100); 

    if (a == 1) { 
     $("#monthlyHead").html(headone); 
     $("#monthlyText").html(textone); 
    } 
    else if (a == 2) { 
     $("#monthlyHead").html(headtwo); 
     $("#monthlyText").html(texttwo); 
    } 

    $("#monthlyHead").fadeIn(900); 
    $("#monthlyText").fadeIn(900); 
} 
+0

jQuery _is_ JavaScript. –

답변

1
function updateIt(a){ 
    $("#monthlyHead,#monthlyText").fadeOut(100,function(){ 
      if (a == 1) { 
       $("#monthlyHead").html(headone); 
       $("#monthlyText").html(textone); 
      } else if (a == 2) { 
      $("#monthlyHead").html(headtwo); 
      $("#monthlyText").html(texttwo); 
      } 

     $(this).fadeIn(900); 
    }); 
} 
1

페이드 아웃, fadeIn, 모든 jQuery를 애니메이션 방법을 취할 애니메이션이 완료 될 때 실행되는 선택적 '콜백'인수. 이것이 당신이 여기서 사용해야하는 것입니다. 그래서 :

$("#monthlyHead").fadeOut(100, function() { 
    if (a == 1) { 
     $("#monthlyHead").html(headone); 
    } 
    else { 
     $("#monthlyHead").html(headtwo); 
    } 
    $("#monthlyHead").fadeIn(900); 
}); 
0

간체 여기

DEMO

function updateit(a) { 

    $("#monthlyHead").fadeOut(100, function() { 
     if (a == 1) { 
      $("#monthlyHead").html(headone); 
     } else if (a == 2) { 
      $("#monthlyHead").html(headtwo); 
     } 

    }).fadeOut(900); 

    $("#monthlyText").fadeOut(100, function() { 
     if (a == 1) { 
      $("#monthlyText").html(textone); 
     } else if (a == 2) { 
      $("#monthlyText").html(texttwo); 
     } 

    }).fadeOut(900); 
} 
-1

는 다음과 같은 구조를 시도하려고?

$(selector).fadeOut(100, function(){ 
    $(selector2).html(text); 
    $(selector).fadeIn(900); 
});