我想將高亮和刪除效果應用於同一個dom。一個接一個地。不幸的是,高亮效果是不可見的,因爲刪除後立即觸發。jQuery特效組合
任何想法延遲刪除操作?
$("#<%= dom_id(@stock) %>").effect("highlight", {}, 4000)
$("#<%= dom_id(@stock) %>").remove()
我想將高亮和刪除效果應用於同一個dom。一個接一個地。不幸的是,高亮效果是不可見的,因爲刪除後立即觸發。jQuery特效組合
任何想法延遲刪除操作?
$("#<%= dom_id(@stock) %>").effect("highlight", {}, 4000)
$("#<%= dom_id(@stock) %>").remove()
問題是,.remove()
不能拖延。這是立即觸發的功能之一,意味着.delay()
什麼也不做。
然而,JavaScript的setTimeout()
功能:
$('#g').click(function(){
$("#hi").hide("highlight", {}, 4000)
setTimeout('$("#<%= dom_id(@stock) %>").remove();', 4100)
});
是effect
一個jQuery插件?我無法在jQuery站點上找到該函數的任何文檔。
使用jQuery Animate是因爲您在動畫完成後得到回調。
$("#<%= dom_id(@stock) %>").animate({
opacity: 0.25,
}, 4000, function() {
// Animation complete.
$("#<%= dom_id(@stock) %>").remove();
});
更新
像Shawn31313說
effect(..)
是jQuery用戶界面的一部分,此功能還支持 「回調」 的作用完成後。 jQuery UI Effect
希望這有助於
影響帶有jQuery UI的,我相信。 – Shawn31313
謝謝!我更新了我的答案。 – dknaack
是的,它帶有jQuery UI。你的解決方案也可以。 – Gaelle
.effect()有回調參數,這將影響完成後調用。見effect demo。
$("#<%= dom_id(@stock) %>").effect("highlight", {}, 4000, function() {
$("#<%= dom_id(@stock) %>").remove();
});
謝謝。我刪除了刪除操作,並且在你的語法中工作得很好。這就是我所需要的。謝謝 – Gaelle
您的歡迎。很高興我能幫上忙。 – Shawn31313