gpt4 book ai didi

javascript - 预加载图像后触发事件

转载 作者:可可西里 更新时间:2023-11-01 01:27:14 25 4
gpt4 key购买 nike

这是我用来预加载图像的代码,我不确定它是否是最好的代码。我的问题是,我怎样才能触发和事件,例如 alert();完成所有图像加载后的对话框?

var preload = ["a.gif", "b.gif", "c.gif"];
var images = [];
for (i = 0; i < preload.length; i++) {
images[i] = new Image();
images[i].src = preload[i];
}

最佳答案

如果您愿意,可以使用新的“$.Deferred”:

var preload = ["a.gif", "b.gif", "c.gif"];
var promises = [];
for (var i = 0; i < preload.length; i++) {
(function(url, promise) {
var img = new Image();
img.onload = function() {
promise.resolve();
};
img.src = url;
})(preload[i], promises[i] = $.Deferred());
}
$.when.apply($, promises).done(function() {
alert("All images ready sir!");
});

让 Image 对象四处漂浮可能有点冒险,但如果是这样的话,可以通过移动闭包轻松解决。 编辑 事实上,我会自己更改它,因为它困扰着我:-)

关于javascript - 预加载图像后触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5623639/

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