我想在延遲幾秒鐘後淡出一個元素及其所有子元素。但我還沒有找到一種方法來指定效果應該在指定的時間延遲後開始。延遲JQuery效果
回答
setTimeout(function() { $('#foo').fadeOut(); }, 5000);
5000是五秒鐘,以毫秒爲單位。
請注意,這是使用Javascript的內置setTimeout函數,沒有什麼特定的jQuery。 – 2008-10-30 18:24:27
這隻能部分回答他的問題,我想。 – 2008-10-30 18:26:41
如果孩子們在#foo元素中,他們也應該褪色... – swilliams 2008-10-30 18:29:43
您可以通過使用fadeTo()方法避免使用setTimeout,並設置5秒延遲。
$("#hideAfterFiveSeconds").click(function(){
$(this).fadeTo(5000,1,function(){
$(this).fadeOut("slow");
});
});
我用這個插件暫停我剛寫
$.fn.pause = function(duration) {
$(this).animate({ dummy: 1 }, duration);
return this;
};
這樣稱呼它:
$("#mainImage").pause(5000).fadeOut();
注意:你並不需要一個回調。
編輯:您現在應該使用jQuery 1.4. built in delay()方法。我沒有檢查,但我認爲它比我的插件更「聰明」。
我寫了一個插件,可以讓你在鏈中添加延遲。例如$('#div')。fadeOut()。delay(5000).fadeIn(); //淡出元素,等待5秒,淡入淡出元素。
它不使用任何動畫hack或過多的回調鏈接,只是簡單的乾淨的短代碼。
以前,你會做這樣的事情
$('#foo').animate({opacity: 1},1000).fadeOut('slow');
第一動畫沒有做任何事情,因爲你已經有了透明度1的元素,但它會暫停的時間量。
在jQuery 1.4中,他們已經將此構建到框架中,因此您不必像上面那樣使用hack。
$('#foo').delay(1000).fadeOut('slow');
的功能是一樣的原始jQuery.delay()
插件http://www.evanbot.com/article/jquery-delay-plugin/4
最好的辦法是通過使用jQuery延時方法:
$( '#添加my_id')延遲(2000年)。淡出(2000);
- 1. jQuery延遲無效果?
- 2. 在jquery中延遲ondragover的效果/ javascript
- 3. jQuery的延遲淡入效果
- 4. jQuery-ui效果/動畫延遲開始
- 5. jQuery的延遲效果基本show
- 6. Jquery效果延遲了固定菜單
- 7. 對同步jQuery UI效果的延遲
- 8. jquery:在效果之前添加延遲
- 9. CSS3增加延遲效果?
- 10. 延遲徘徊效果
- 11. 延遲jquery循環延遲
- 12. RecyclerView的延遲加載效果
- 13. 延遲Javascript效果500毫秒
- 14. 如何延遲我的animate.css效果?
- 15. 系統延遲效果命令
- 16. 延遲UINavigationBar的外觀效果
- 17. Twitter Bootstrap延遲的CSS效果
- 18. 實現音頻延遲效果單元
- 19. 爲javascript淡入效果添加延遲?
- 20. jquery setTimeOut延遲
- 21. Jquery Ajax延遲
- 22. jQuery效果與延遲+內聯塊重疊
- 23. jQuery延遲()效果後,但不是之前?
- 24. 延遲jQuery效果,同時頁面加載
- 25. jQuery UI工具提示延遲沒有效果
- 26. jQuery刪除延遲眨眼效果與事件
- 27. JQuery延遲解決其他延遲
- 28. 的jquery - 延遲加載 - 設置延遲
- 29. jQuery(ajax)$ .get方法延遲結果
- 30. Observable.Generate延遲結果
你能舉一個例子,說明一個元素的子元素何時不與元素一起褪色? – tvanfosson 2008-10-30 18:31:28
對不起,我的錯誤,我會更新帖子 – 2008-10-30 18:38:00