我有一個警告消息元素,我想在2秒後隱藏它。我有一個在頁面加載後運行的JavaScript,它會在頁面加載時出現任何警報。如何檢測jQuery中html元素的變化
但是,在頁面加載後會顯示警報,並且這些警報將保持不變。如何觀察更改,即警報消息元素是否再次可見,以便在2秒後隱藏它?
這是我用來隱藏第一個警報代碼:
$(document).ready(function(){
var hide_delay = 4000; // starting timeout before first message is hidden
var hide_next = 800; // time in mS to wait before hiding next message
$(".alert-message").slideDown().each(function(index,el) {
window.setTimeout(function(){
$(el).slideUp(); // hide the message
}, hide_delay + hide_next*index);
});
謝謝。
有沒有真正有效的方法來做到這一點。是不可能修改顯示警報的代碼? – 2012-04-03 02:58:04
我能想到的最好方法是不斷用setInterval或setTimeout檢查它,但這是一個不好的解決方案。最優化將以某種方式掛鉤您需要使用的這些「警報」。 – Kris 2012-04-03 03:07:09
嗨克里斯,這似乎是正確的方向。你可以再詳細一點嗎?提前致謝。 – AdamNYC 2012-04-03 03:40:04