有時可能會調用該函數太快,並創建多個元素,但由於它使用的ID對每個實例都不是唯一的,因此淡出和移除div的部分僅適用於頂級元素,而不是全部。所以我最終得到了一個靜態div標籤,它不是淡入淡出。重複JS函數的最佳方法
我能想到的最好的事情就是簡單地重複這個過程。我該怎麼做,還是有更好的方法?
document.triggerNotification = function (type, message) {
jQuery(document.body).append("<div class='push-notification push-"+type+"' id='notification'>"+message+"</div>");
jQuery('#notification').delay(1500).fadeOut(1200, function() {
jQuery('#notification').remove();
});
}
這是最好的解決方案。我還會注意到,在這種情況下,setTimeout比延遲更合適。延遲更適合排隊的fx,但由於您只會在元素上執行一個動畫,setTimeout就足夠了。 – Ender 2010-09-21 20:05:21