Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.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/2/jquery/77.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 第一次打开页面时图像速度非常慢-如何加载图像_Javascript_Jquery_Image_Preload - Fatal编程技术网

Javascript 第一次打开页面时图像速度非常慢-如何加载图像

Javascript 第一次打开页面时图像速度非常慢-如何加载图像,javascript,jquery,image,preload,Javascript,Jquery,Image,Preload,我有一个页面,在这个页面上,登录页面上的图像会随着时间的推移而变化(一个接一个的图像会发生变化)。这很好,但当上传网站时,我意识到我在登陆页面上的图片加载非常慢,因此看起来不太好。一旦全部加载(所有页面至少出现一次),页面就会再次正常运行,过渡也会变得平滑而漂亮 我在想一种预装图片的方法。我找到了很多东西,并尝试了以下方法: $(window).load(function() { $(".loader").fadeOut("slow");

我有一个页面,在这个页面上,登录页面上的图像会随着时间的推移而变化(一个接一个的图像会发生变化)。这很好,但当上传网站时,我意识到我在登陆页面上的图片加载非常慢,因此看起来不太好。一旦全部加载(所有页面至少出现一次),页面就会再次正常运行,过渡也会变得平滑而漂亮

我在想一种预装图片的方法。我找到了很多东西,并尝试了以下方法:

           $(window).load(function() {

               $(".loader").fadeOut("slow");    /*gif that shows when page loads*/

               function backgrounds() {
                    for (i = 0; i < preload.arguments.length; i++) {
                        images[i] = new Image()
                        images[i].src = preload.arguments[i]
                    }
                }

           })

                var backgrounds = new Array(
                    'url(Images/image_1.jpg)'
                  , 'url(Images/image_2.jpg)'
                );

      $(document).ready(function(){
           /*I have here other functions as well as the function that changes the images one by one*/
      });
$(窗口).load(函数(){
$(“.loader”).fadeOut(“slow”);/*加载页面时显示的gif*/
函数背景(){
对于(i=0;i
没有成功。第一次加载页面时,我遇到了完全相同的问题。照片第一次加载时速度非常慢,而且照片的更改功能在加载之前就开始了(有一种加载方式,可以旋转图片并进行更改)

由于我对所有这些都是新手,请任何人帮助解决这个问题的最佳方法,并确保首先完成加载


非常感谢

您可以使用必要的文件在名称空间中创建一个新的图像对象,浏览器在查找图像时将找到该文件。像这样:

(new Image()).src = "yourImagePath";
这不会将图像放在页面上,但会将其加载以供将来使用


希望这有帮助

您可以在名称空间中创建一个包含必要文件的新图像对象,然后在查找图像时,浏览器将找到该文件。像这样:

(new Image()).src = "yourImagePath";
这不会将图像放在页面上,但会将其加载以供将来使用


希望这有帮助

我认为您不应该使用javascript预加载图像,因为CSS3有更好的解决方案。这与最近的浏览器兼容

例如:


我认为您不应该使用javascript预加载图像,因为有一个更好的解决方案是使用CSS3。这与最近的浏览器兼容

例如:


下面是CSS预加载图像的方法

请参阅此链接中已接受的答案:


这将基本上加载背景上的所有图像,同时显示加载的gif和图像的实际引用将从缓存中加载。

以下是CSS预加载图像的方法

请参阅此链接中已接受的答案:


这将基本上在后台加载所有图像,而您显示加载的gif和图像的实际参考将从缓存中加载它。

您的图像的文件大小是多少?每个200K(我有五个),所以您只下载了近1mb的5个图像?他们的决心是什么?我想你需要先调整图像的大小你的图像的文件大小是多少?每个200K(我有五个),所以你下载了几乎1mb的5个图像?他们的决心是什么?我认为你需要先调整图片的大小如果他的图片太大(听上去是这样的),那么速度还是会很慢的,所以用代码“解决”它是没有帮助的。但是我喜欢这个解决方案,我已经尝试过这个选择。但是现在页面的加载最初需要更长的时间。这是已知的效果还是我做错了什么?图像大小约为200keach@inasiopo是的,这是预料之中的。因为CSS加载会阻止页面的呈现。试着优化你的图片。如果他的图片太大(从声音上看是如此),那么它仍然会很慢,所以用代码“解决”它是没有帮助的。但是我喜欢这个解决方案,我已经尝试过这个选择。但是现在页面的加载最初需要更长的时间。这是已知的效果还是我做错了什么?图像大小约为200keach@inasiopo是的,这是预料之中的。因为CSS加载会阻止页面的呈现。尝试优化你的图像。