假设我在网页上有一个按钮。每当单击该按钮时,某些内容(可以达到 5MB 的完整图像文件列表)会异步预加载,并在加载完成后添加到网页中。
但是,只有在第一个预加载过程完成之前再次单击该按钮,然后再启动第二个,才有意义。我怎样才能实现这种强制停止?
顺便说一句,我正在使用Ariel Flesler 的基于 jQuery 的图像预加载器。
提前致谢!
假设我在网页上有一个按钮。每当单击该按钮时,某些内容(可以达到 5MB 的完整图像文件列表)会异步预加载,并在加载完成后添加到网页中。
但是,只有在第一个预加载过程完成之前再次单击该按钮,然后再启动第二个,才有意义。我怎样才能实现这种强制停止?
顺便说一句,我正在使用Ariel Flesler 的基于 jQuery 的图像预加载器。
提前致谢!
这是奇怪的代码,有 2 个地方图像保持img
变量和$preload.cache
数组。
你可以添加这个
settings.control(function() {
imgs = null;
$preload.cache = [];
});
它可以在这条线之后
var imgs = $(Array(settings.threshold+1).join('<img/>'))
.load(handler).error(handler).bind('abort',handler).each(fetch);
你可以将函数传递给 abort
var _abort = null;
$('<your button>').click(function() {
if (_abort) {
_abort();
}
$.preload( '#images img', {
placeholder:'placeholder.jpg',
notFound:'notfound.jpg'
control: function(abort) {
_abort = abort;
}
});
});
它应该可以工作,但我不确定它是否会。