首先,如果您希望在加載時顯示動畫,請使用ajaxStart和ajaxStop。它可以自動無痛地做到這一點。這裏有一個例子:
//注意!這使用jQuery的UI做的對話框......
jQuery(document).ready(function() {
var body = jQuery("body");
body.append('<div id="ajaxBusy"><div style="text-align:center" ><p>Communicating with server...<br \/>Please wait for this operation to finish.<br \/><img src="\/js\/jquery.smallhbar.indicator.gif" \/><\/p><\/div><\/div>');
jQuery('#ajaxBusy').css({
display:"none",
margin:"0px",
width:"260px",
height:"170px",
padding:"5px",
textAlign:'center'
});
jQuery("#ajaxBusy").dialog({
autoOpen: false,
bgiframe: true,
closeOnEscape: false,
//modal: true,
title: 'Shipping Department'});
jQuery(document).ajaxStart(function() {
jQuery('#ajaxBusy').dialog('open');
});
jQuery(document).ajaxStop(function() {
jQuery('#ajaxBusy').dialog('close');
});
});
有了這個代碼在我jQuery.ready部分,當AJAX的操作出現一個漂亮的對話框會自動閃爍。最後,如果之後需要顯示內容,則需要將show()方法放入ajax調用的成功函數中。如果你有多個Ajax調用發生,你需要使用一些變量作爲標誌來指示什麼時候完成(笨拙)。
您是否有一個或多個ajax調用發生?