Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 显示几秒钟后隐藏html元素_Javascript_Jquery - Fatal编程技术网

Javascript 显示几秒钟后隐藏html元素

Javascript 显示几秒钟后隐藏html元素,javascript,jquery,Javascript,Jquery,在一个成功的ajax调用之后,我将显示一个元素,告诉您成功的状态。我需要临时显示它,并在10秒后隐藏它 我有一个段落元素,其类设置为加载时隐藏已成功更新 下面的代码似乎不起作用,因为通过添加“show”类,元素在显示后不会隐藏 function UpdateChangeRequest() { $.ajax({ url: '/Request/UpdateRequest', cache: false, data

在一个成功的ajax调用之后,我将显示一个元素,告诉您成功的状态。我需要临时显示它,并在10秒后隐藏它

我有一个段落元素,其类设置为加载时隐藏

已成功更新

下面的代码似乎不起作用,因为通过添加“show”类,元素在显示后不会隐藏

function UpdateChangeRequest() {
        $.ajax({
            url: '/Request/UpdateRequest',
            cache: false,
            data: $('form[id="RequestForm"]').serialize(),
            type: 'POST',
            success: function (data) {
                $('.divPartial').html(data);
                $('.response').addClass('show').removeClass('hide');                    
                setTimeout(function () {
                    $('.response').fadeOut('fast');
                }, 1000);
            }
        });
    }
有什么想法吗?谢谢

简单的呢:

$(obj).show().delay(10000).hide();
试试这个:-

$('.response').show().delay(10000).fadeOut('slow');

找到您的元素,显示它,添加10秒的延迟,最后隐藏它。您可以像这样链接所有这些效果/事件:

$('.response').show().delay(10000).hide();

您应该在
success
回调中尝试以下操作:

$(函数(){
$('.response').hide();
$('#false')。单击(函数(){
$('.response').show();
setTimeout(函数(){$('.response').fadeOut('fast');},1000);
});
});

已成功更新


您可以使用回调

$(".response").fadeIn("slow","swing", function()
    {
        (".response").delay(10000).fadeOut("slow");
    });

您的代码应该像我在评论中提到的那样工作。我把它们放在代码笔里,改动最小

html:

js:


代码笔示例:

您可以发布您的标记吗?谢谢,请也添加您的ajax调用。我尝试将您的代码放入codepen,它可以正常工作。请参见上文,标记已成功更新元素“

`如果你想使用jquery.fadeIn/fadeOut,你就不应该费心去玩弄那些add-remove类。如果您想使用的是add-remove类方法,那么您应该在css中定义css转换,这样切换类就足够了,为什么

show
fadeOut
而不是
fadeIn
hide
?为什么
而不是
?OP要求显示和隐藏。仅此而已你至少花了3次编辑才到达那里。。。因此我投了反对票。@MrUpsidown:忽略4分钟内的任何编辑。。。根据目前的答案投票。你能添加一些上下文来解释为什么这是正确的答案吗?对不起,伙计,我不明白你的问题。一般来说,只使用代码的答案不合适,并且会被标记为正确答案。一个好的代码答案有一些上下文来解释发生了什么以及为什么它解决了OP的问题。
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<p class="response hide" >Successfully Updated!</p>
<!--- response msg is hidden by default --->
.hide{
  display: none;
}
var millisecondsToWait = 1000;

$(document).ready(function(){
    //$('.response').addClass('show').removeClass('hide');


    $('.response').show();
    setTimeout(function () {
      $('.response').fadeOut('fast');
    }, millisecondsToWait);
});