Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.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_Css - Fatal编程技术网

Javascript 当我使用其他方法时,jQuery加载动画并没有隐藏在加载页面上或显示延迟

Javascript 当我使用其他方法时,jQuery加载动画并没有隐藏在加载页面上或显示延迟,javascript,jquery,css,Javascript,Jquery,Css,我正在使用jQuery完成一项简单的任务。任务是简单地显示加载动画,直到页面完全加载为止 我所经历的是,动画在50-75%的时间后显示,然后在页面完全加载后隐藏(我在问题的下一部分中将其称为延迟) 注意事项: ->如果我将动画代码放在header.php中,将script放在footer.php中,则代码显示延迟(已提到) ->如果我将动画代码和script都放在header.php中,动画永远不会隐藏(对我来说不明确)。对于footer.php中的两个,它都被隐藏,但显示延迟 我想知道为什么我

我正在使用jQuery完成一项简单的任务。任务是简单地显示加载动画,直到页面完全加载为止

我所经历的是,动画在50-75%的时间后显示,然后在页面完全加载后隐藏(我在问题的下一部分中将其称为延迟)

注意事项:

->如果我将动画代码放在header.php中,将script放在footer.php中,则代码显示延迟(已提到)

->如果我将动画代码和script都放在header.php中,动画永远不会隐藏(对我来说不明确)。对于
footer.php
中的两个,它都被隐藏,但显示延迟

我想知道为什么我的页面会这样做,做这项任务的最佳方法是什么。(我知道我的方法不是最好的,因为它行为不端)

注意:我的主页包括
header.php
footer.php
文件

我的问题到此结束

这是引导加载动画。(工作正常。没问题。只是为了展示)

动画代码


加载。。。
这就是我用来隐藏页面上动画的函数完全加载了。(也很好用。没问题。只是为了展示)

脚本


$(文档).ready(函数($){
$(“#加载”).fadeOut(“慢”);
});

document.ready()表示如果页面内容庞大,并且在底部添加了js以加载DOM,则DOM可以运行,因此加载动画会延迟。在标题处,确保jquery位于自定义CSS之上。如果您对答案不满意,请编辑问题并添加完整的HTML标记。

document.ready()意味着您的DOM已准备好运行,如果您的页面有大量内容,并且在底部添加了js以加载DOM需要时间,则加载动画会延迟。在标题处,确保jquery位于自定义CSS之上。如果您对答案不满意,请编辑问题并添加完整的HTML标记。

我发现了错误。让动画在一段时间后加载的是,在动画代码之前,我链接了引导CDN,然后是动画代码。这就是为什么花费的时间比预期的要长。
我学到的是,使用引导加载动画(显示页面正在加载的动画)是一种糟糕的方法。相反,应该使用用于动画的CSS和HTML。主要使用网站上的任何库都会影响网站的速度,这对SEO不好。

我发现了错误。让动画在一段时间后加载的是,在动画代码之前,我链接了引导CDN,然后是动画代码。这就是为什么花费的时间比预期的要长。
我学到的是,使用引导加载动画(显示页面正在加载的动画)是一种糟糕的方法。相反,应该使用用于动画的CSS和HTML。主要是在网站上使用任何库都会影响网站的速度,这对SEO不好。

您经历了两种不同的情况。让我逐一澄清:

1。如果我将动画代码放在header.php中,将脚本放在footer.php中,那么代码将显示延迟(已提到)。

您说过要在动画代码之前插入引导,因此加载可能需要时间。我将重复您的话:是的,最好避免使用任何框架或库(如Bootstrap或jQuery)来添加页面加载动画。这是因为进度条应该是第一个加载和显示的,如果浏览器需要加载像第三方库这样的重文件,它会延迟。嗯,还有一个解决方案:

您还可以使用HTML5的
标记的
async
属性异步加载脚本。但是,不能在动画代码中使用引导。原因是,引导可能会在渲染动画代码之后加载。阅读:


2。如果我将动画代码和脚本都放在header.php中,动画就永远不会隐藏(对我来说不明确)。在footer.php中,这两个选项都会隐藏,但会显示延迟。

您说过要在
footer.php
中的
末尾添加jQuery文件,因此在
header.php中放置
脚本时不会运行,因为jQuery仍然没有加载。检查控制台日志;将会有一个错误

您必须首先加载jQuery,然后使用它。阅读:


此外,如果在加载所有资源(如图像和iFrame)后试图隐藏进度条,请使用
$(document).load()
代替
$(document).ready()<代码>$(document).ready()
在DOM就绪时被激发,但是
$(document).load()在页面加载时被激发。

您经历了两种不同的场景。让我逐一澄清:

1。如果我将动画代码放在header.php中,将脚本放在footer.php中,那么代码将显示延迟(已提到)。

您说过要在动画代码之前插入引导,因此加载可能需要时间。我将重复您的话:是的,最好避免使用任何框架或库(如Bootstrap或jQuery)来添加页面加载动画。这是因为进度条应该是第一个加载和显示的,如果浏览器需要加载像第三方库这样的重文件,它会延迟。嗯,还有一个解决方案:

您还可以使用HTML5的
标记的
async
属性异步加载脚本。但是,不能在动画代码中使用引导。原因是,引导可能会在渲染动画代码之后加载。阅读:


2。如果我把动画代码和脚本都放在头上
<div id="Loading">
    <div class="spinner-border m-5" role="status" >
      <span class="sr-only" >Loading...</span>
    </div>
</div>
<script>
    $(document).ready(function($) {
        $('#Loading').fadeOut("slow");
    });
</script>