如果未在10秒内隐藏,请隐藏div

时间:2016-05-05 18:51:51

标签: javascript jquery html ajax

这是用于在页面加载之前显示加载程序图像的代码

我有这段代码:

document.onreadystatechange = function () {
   var state = document.readyState
   if (state == 'interactive') {
      $('#until_load').show();
   } else if (state == 'complete') {
     setTimeout(function(){
        $('#until_load').fadeOut();
     },1000);
   }
}

如果未在5秒内隐藏div,我想自动隐藏它。 有时这会失败或任何其他原因......任何想法都会有所帮助。

1 个答案:

答案 0 :(得分:1)

这样的事情怎么样?如果state是interactive,show loader,并设置一个超时,它将在5秒内隐藏它,否则使用你的其他超时在1秒内隐藏它(或立即?)

document.onreadystatechange = function () {
    var state = document.readyState
    if (state == 'interactive') {
        $('#until_load').show();
        setTimeout(function(){
            $('#until_load').fadeOut();
        },5000);
    } 
    else if (state == 'complete') {
        setTimeout(function(){
            $('#until_load').fadeOut();
        },1000);
    }
}