2008-10-08 30 views
26

我有這段代碼執行ajax調用,並在每次更改下拉列表時將結果加載到兩個重複的div中。我希望結果能夠淡入分支,更清楚地表明事情已經發生了變化,因爲它非常無縫,有時很難注意到變化!讓我的ajax更新div淡入

print("$('.ajaxdropdown').change(function(){ 


     $.ajax({ 
      type: "GET", 
      url: "/includes/html/gsm-tariff.php", 
      data: "c_name="+escape($(this).val()), 
      success: function(html){ 
       $("#charges-gsm").html(html); 
            //i want to fade result into these 2 divs... 
       $("#charges-gsm-faq").html(html); 
       $("#charges-gsm-prices").html(html); 
      } 
     }); 
    });"); 

我試着追加fadein方法和其他一些東西,但沒有喜悅。

回答

43

您必須先使用hide()才能使用fadeIn()

UPDATE:這裏是你如何會通過鏈接做到這一點:

$("#charges-gsm-faq").hide().html(html).fadeIn(); 
$("#charges-gsm-prices").hide().html(html).fadeIn(); 
+2

所以有沒有比這更簡單的方式使用鏈接或其他? $(「#charges-gsm-faq,#charges-gsm-prices」)。hide(); (「#charges-gsm-faq,#charges-gsm-prices」)。html(html); $(「#charges-gsm-faq,#charges-gsm-prices」)。fadein(slow); – 2008-10-09 11:00:24

3

你也可以把它可見,只是讓它透明,然後褪色完全不透明,使用:

... .css({ opacity: 0 }).fadeTo("normal",1); 
2

你必須隱藏()之前,你可以使用淡入()

以上爲我工作

0

它與負載():

$('.element').load('file.html').hide().fadeIn();