首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery在5秒后自动隐藏元素

jQuery在5秒后自动隐藏元素
EN

Stack Overflow用户
提问于 2009-03-25 20:41:22
回答 7查看 248K关注 0票数 98

是否可以在使用jQuery加载表单5秒后自动隐藏网页中的元素?

基本上,我有

代码语言:javascript
复制
<div id="successMessage">Project saved successfully!</div>

我想在5秒后消失。我看过jQuery的UI和隐藏效果,但我有点小麻烦让它以我想要的方式工作。

代码语言:javascript
复制
<script type="text/javascript">
        $(function() {
            function runEffect() {

                var selectedEffect = 'blind';

                var options = {};

                $("#successMessage").hide(selectedEffect, options, 500);
            };

            $("#successMessage").click(function() {
                runEffect();
                return false;
            });
        });
    </script>

我希望删除单击函数,并添加一个在5秒后调用runEffect()的超时方法。

EN

回答 7

Stack Overflow用户

发布于 2010-11-06 03:39:16

代码语言:javascript
复制
$('#selector').delay(5000).fadeOut('slow');
票数 226
EN

Stack Overflow用户

发布于 2015-07-02 14:09:23

您可以尝试:

代码语言:javascript
复制
setTimeout(function() {
  $('#successMessage').fadeOut('fast');
}, 30000); // <-- time in milliseconds

如果你使用这个,那么你的div将在30秒后隐藏。我也尝试过这个,它对我很有效。

票数 12
EN

Stack Overflow用户

发布于 2017-11-08 05:04:42

请注意,在div文本消失后,您可能需要再次显示它。因此,您还需要清空该元素,然后在某个时刻重新显示该元素。

只需一行代码即可完成此操作:

代码语言:javascript
复制
$('#element_id').empty().show().html(message).delay(3000).fadeOut(300);

如果你使用的是jQuery,你不需要setTimeout,至少不需要自动隐藏元素。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/683363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档