2012-07-26 36 views
0

我想要一個按鈕在AJAX調用之前短暫閃爍(以及其他一些動畫發生)。 ajax調用發生得非常快,所以我不想使用AJAX的before函數。在任何其他動畫之前,眨眼必須明確。我覺得如果有這樣做更漂亮的方式:更好的方式來閃爍按鈕jQuery?

 //This is inside of a button click event 
     $(this).addClass('active').delay(250).queue(function (e) { 
      $(this).removeClass('active').delay(250).queue(function (f) { 
       alert(33); 
       $child.css('margin-left', $(window).width() + 10 + 'px'); 
       $child.load(url + 'API CALL' + $(this).data("id"), bindAClicks); 
      }); 
     }); 

bindAClicks - 的動畫以保證金:0。

$ child是一個容器div。

active是一個黑色背景的類。

什麼奇怪的是,警報甚至不是射擊。

+0

如果你指的是beforeSend,我會推薦檢查這個答案,它顯示瞭如何等待你的動畫完成之前。 http://stackoverflow.com/questions/5212949/jquery-ajax-wait-until-beforesend-animation-finishes – JasCav 2012-07-26 16:29:43

+0

謝謝。這個AJAX只是一個例子。我的非ajax按鈕也需要相同的功能。如果你把這個問題作爲答案,我會給你代表 – user974896 2012-07-26 16:49:31

+0

爲什麼要「事先」? AJAX是異步的,啓動請求並在等待響應時閃爍按鈕。 – 2012-07-26 17:10:04

回答

0

如果您指的是beforeSend,我會推薦檢查this answer,它顯示瞭如何等待您的動畫完成。

爲了迴應奧列格的評論,我不確定你說什麼問題,當你說響應如此之快,你看不到眨眼。我創建了一個quick example來演示它如何工作(這樣您就可以進行Ajax調用並仍然執行閃爍)。希望這有助於。