2013-03-22 62 views
0

我使用load()將某些東西加載到名爲'contents'的div中,並在開始加載之前將其隱藏起來。我希望div在內容完全加載之後纔會淡入,但看起來div的內容會在加載完成之前消失。我使用以下腳本:jquery在內容加載完成之前執行

$("#menu").click(function(){ 
     $("#contents").hide().load(loadUrl, function(){ 
      $(this).fadeIn(1000);}); 
    }); 

有人能幫助我解決這個問題嗎?我目前正在我的本地服務器上測試它。

+0

我猜想有加載的內容中的圖像has'nt finishe d當fadeIn發生時加載。 – adeneo 2013-03-22 08:26:11

+0

@ adeneo是的,這是正確的。 – Ansehelm 2013-03-22 08:30:38

+0

然後你有一個問題,並忽略下面的所有答案! – adeneo 2013-03-22 08:32:22

回答

0

使用它作爲下面,

$("#contents").hide().load(loadUrl, function(){ }).fadeIn(1000); 
0

它看起來像一個瀏覽器重繪問題,給人一​​種超時淡入叫應解決proble

$("#menu").click(function(){ 
    $("#contents").hide().load(loadUrl, function(){ 
     var el = $(this); 
     setTimeout(function(){ 
      el.fadeIn(1000); 
     }, 100) 
    }); 
}); 

您也可以嘗試使用delay前功能

$("#menu").click(function(){ 
    $("#contents").hide().load(loadUrl, function(){ 
     $(this).delay(10).fadeIn(1000); 
    }); 
}); 
相關問題