我已經設置這一切準備就緒 http://jsbin.com/ejese3/edit我怎樣才能讓這些火一個接一個地開火?
我有這些警告消息,但在目前,如果你當前的警報之前單擊另一個完成一切都有點瘋了。我想要做的是讓他們排隊等待一個接一個的射擊而不是重疊。
對此提出建議?
我已經設置這一切準備就緒 http://jsbin.com/ejese3/edit我怎樣才能讓這些火一個接一個地開火?
我有這些警告消息,但在目前,如果你當前的警報之前單擊另一個完成一切都有點瘋了。我想要做的是讓他們排隊等待一個接一個的射擊而不是重疊。
對此提出建議?
我不確定我是否理解這個問題,但是像slideUp()
這樣的jQuery函數可以採用回調方法,該方法在操作完成後會被觸發。
您可以使用回調來顯示下一個警報。
http://api.jquery.com/slideDown/
對於它的價值,jQuery代碼(如你的例子),看起來像:
$('#messageDrop').addClass('visible').slideDown().delay('2000').slideUp().removeClass('visible')
...是難以閱讀和維護(IMO)。添加回調或嵌套回調增加了這種複雜性。考慮聲明一些局部變量並使用這些對象而不是將一堆語句鏈接在一起。
此外,stop()
方法是你與(潛在衝突)jQuery的動畫打交道時的朋友:http://api.jquery.com/stop/
$('#messageDrop').addClass('visible').slideDown(2000,
function(){ $(this).slideUp(2000,
function(){ $(this).removeClass('visible');
});
});