Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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更改多个css背景图像时,白色闪烁_Javascript_Jquery_Html_Css_Image - Fatal编程技术网

Javascript 当通过jQuery更改多个css背景图像时,白色闪烁

Javascript 当通过jQuery更改多个css背景图像时,白色闪烁,javascript,jquery,html,css,image,Javascript,Jquery,Html,Css,Image,我有一个有多个css背景图片的页面。每次单击一个点(前三个点在底部工作),一个新图像就会通过jQuery进入。 不幸的是,在浏览器缓存图像之前,会出现白色闪烁 是否有办法预加载三幅背景图像?$(' $('<img/>', {src: your_source}); // for each image 这将缓存您的图像。如果要加载一组URL: [ "images/sunset.jpg", "images/greece.jpg", "images/adventur

我有一个有多个css背景图片的页面。每次单击一个点(前三个点在底部工作),一个新图像就会通过jQuery进入。 不幸的是,在浏览器缓存图像之前,会出现白色闪烁


是否有办法预加载三幅背景图像?

$('
$('<img/>', {src: your_source}); // for each image
这将缓存您的图像。如果要加载一组URL:

[
    "images/sunset.jpg",
    "images/greece.jpg",
    "images/adventure.jpg"
].forEach(function(url){
    new Image().src = url;
});


如您所见,所有三个图像都已预加载。

您可以使用js本身预加载图像

例如:

var img1 = new Image();
img1.src = "img1 path";

var img2 = new Image();
img2.src = "img2 path";

在页面加载和浏览器加载所有图像时执行此操作,并且当您需要显示这些图像时,它们已经加载了

请共享您的代码以获得更多理解。如果您可以在本机JavaScript中更快地执行此操作,为什么要使用jQuery?…“是否有一种解决方法可以使用jQuery预加载三个背景图像?”他问的就是我的回答。我不知道该说什么。
var img1 = new Image();
img1.src = "img1 path";

var img2 = new Image();
img2.src = "img2 path";