Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.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 如何解决jQuery中预加载程序和会话存储的问题?_Javascript_Jquery_Html_Css_Canvas - Fatal编程技术网

Javascript 如何解决jQuery中预加载程序和会话存储的问题?

Javascript 如何解决jQuery中预加载程序和会话存储的问题?,javascript,jquery,html,css,canvas,Javascript,Jquery,Html,Css,Canvas,我的预加载程序有问题。我试着把它设置为每节课一次。它第一次工作,但当您刷新网站时,预加载程序根本不会停止,在我将从会话存储中删除数据之前,不可能看到网站的内容。在样式表中添加可见性:不可见,根本不起作用 canvas { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: #000000; z-index: 99; } 内容 if(se

我的预加载程序有问题。我试着把它设置为每节课一次。它第一次工作,但当您刷新网站时,预加载程序根本不会停止,在我将从会话存储中删除数据之前,不可能看到网站的内容。在样式表中添加
可见性:不可见
,根本不起作用

canvas {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000000;
  z-index: 99;
}

内容
if(sessionStorage.getItem('dontLoad')==null){
jQuery(“#c”).delay(1000).fadeOut('slow',function(){
jQuery(“body”).animate({
可见性:可见
}, 1000);
});
setItem('dontLoad','true');
}

问题是您需要更改CSS。我会尽力解释。

在CSS中,您已将画布设置为
display:none
。在jQuery中,您尝试使用
淡出
动画。这不起作用,因为元素没有显示,它基本上从文档中删除了,所以jQuery无法更改它

您需要做的是将画布设置为
display:block
。因此,当用户访问网站时,“预加载程序”是可见的。然后“预加载程序”将淡出

这里是更新的CSS

canvas {
    display: block;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #000000;
    z-index: 99;
}
JavaScript

if (sessionStorage.getItem('dontLoad') == null)
{
    jQuery("#c").delay(1000).fadeOut('slow', function()
    {
        jQuery( "body" ).animate({
            visibility: visible
        })
    }, 1000);
}

if (sessionStorage.getItem('dontLoad') == true)
{
    $('#c').css('display', 'none');
}

第一次之后它就不起作用了,因为您设置了
dontLoad
标志,以防止调用
fadeOut()
。我应该使用什么来代替dontLoad?您需要重新构造HTML和CSS。他们的方式,它的设置现在加载程序将始终显示在CSS中,因此将始终隐藏在JS中