gpt4 book ai didi

javascript - 在滚动期间预加载图像

转载 作者:行者123 更新时间:2023-11-30 06:30:19 26 4
gpt4 key购买 nike

我正在使用 Jquery 在页面滚动时更改图像的来源。但是,目前它们在显示时正在加载,我想让它们在显示之前预加载几张图片。

HTML

<img src="/img/1.jpg" />

JQuery

$(window).load(function(){
// Array of images to swap between
var images = [/img/1.jpg, /img/2.jpg, /img/3.jpg, /img/4.jpg];

var totalImages = images.length;

var documentHeight = $(document).height();

// Work out how often we should change image (i.e. how far we scroll between changes)
var scrollInterval = Math.floor(documentHeight / totalImages);

$(document).scroll(function () {
// Which one should we show at this scroll point?
i = Math.floor($(this).scrollTop() / scrollInterval);
// Show the corresponding image from the array
$('img').attr('src', images[i]);
});
});//]]>

CSS

img {
position: fixed;
top: 0;
left: 0;
height: 100%;
}
body {
height: 5000px;
}

尝试。我想添加与此类似的内容,

$(document).scroll(function () {    
function preload(arrayOfImages) {
$(arrayOfImages).each(function(){
(new Image()).src = this;
});
}

i = Math.floor([i]+'1');

preload([[i]]);
}

但不知道如何编码...(JS 新手)

最佳答案

在你的循环中。

var nextTenImages = images.slice(i, i+10);    
// preload the next image
preload(nextTenImages);

JSFiddle:http://jsfiddle.net/gvee/ygkWH/8/

编辑:感谢以下用于预加载图像的 SO 主题:Preloading images with jQuery

关于javascript - 在滚动期间预加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18082939/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com