我想在延迟几秒钟后淡出一个元素及其所有子元素。但我还没有找到一种方法来指定效果应该在指定的时间延迟后开始。延迟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