2012-08-31 105 views
0

我正在學習jQuery,我寫了一個非常簡單的腳本,效果很好。現在我想知道是否有更好的方法來寫這行。有沒有更好的方法來寫這個簡單的jQuery行?

$("form").submit(function() { 
    $('div.beforeRecover').animate({ opacity: 'toggle' }, 300).delay(800); 
    $('div.betweenRecover').animate({ opacity: 'toggle' }, 200).delay(1200); 
    $('div.betweenRecover').animate({ opacity: 'toggle' }, 800); 
    $('div.afterRecover').delay(1800).animate({ opacity: 'toggle' }, 1400); 
    return false; 
}); 

簡單說明:

  1. 表單被提交
  2. 形式變淡
  3. 加載GIF出現
  4. 加載GIF變淡出現
  5. 確認消息。

我感謝任何幫助!

+2

整體單獨的方法,這個問題更適合http://codereview.stackexchange.com/ –

+1

如果你想顯示「加載」圖形,而表單正在提交中,我建議淡化表單並顯示gif,然後使用ajax提交表單並使用ajax調用的完成回調來隱藏gif並顯示消息。根據各種條件,表單提交可能會更快或更慢 – MrOBrian

+0

@MrOBrian:是的,這是一個超越簡單重構的好建議。 –

回答

1
var fadeToggle = { opacity: 'toggle' }; 

$("form").submit(function() { 

    $('div.beforeRecover').animate(fadeToggle, 300).delay(800); 

    $('div.betweenRecover') 
     .animate(fadeToggle, 200).delay(1200) 
     .animate(fadeToggle, 800).delay(1800); 

    $('div.afterRecover').animate(fadeToggle, 1400); 

    return false; 
}); 

逸岸,有一個名爲.fadeToggle()

+0

謝謝,我不知道fadeToggle,非常感謝。 – danchet

相關問題