Image 预缓存/预加载目录
一直在寻找预加载图像目录的方法,发现这是此处提供的最佳脚本: 我最喜欢这个,因为它会在预加载之前等待当前文档加载,但我想让这个家伙加载一个图像目录,而不必指定每个文件,而且我对javascript非常陌生,任何帮助都值得赞赏Image 预缓存/预加载目录,image,caching,load,onload,preload,Image,Caching,Load,Onload,Preload,一直在寻找预加载图像目录的方法,发现这是此处提供的最佳脚本: 我最喜欢这个,因为它会在预加载之前等待当前文档加载,但我想让这个家伙加载一个图像目录,而不必指定每个文件,而且我对javascript非常陌生,任何帮助都值得赞赏 function preloader() { if (document.images) { var img1 = new Image(); var img2 = new Image(); var img3 = new Image(); im
function preloader() {
if (document.images) {
var img1 = new Image();
var img2 = new Image();
var img3 = new Image();
img1.src = "http://domain.tld/path/to/image-001.gif";
img2.src = "http://domain.tld/path/to/image-002.gif";
img3.src = "http://domain.tld/path/to/image-003.gif";
}
}
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}
addLoadEvent(preloader);
没有通用的方法来实现这一点。您需要某种方法从服务器检索目录的内容,并且不能保证您的web服务器将提供一个列表。通常,大多数web服务器不允许客户端列出服务器端目录的内容 如果您控制Web服务器,则可以对其进行配置,以便在您请求http://domain.tld/path/to/". 但即使如此,根据web服务器的不同,返回响应的格式也可能不同 但是,如果您能够从服务器获取给定目录中的图像列表,则仍然需要使用一些技术(如AJAX或隐藏的IFRAME)来加载这些图像名称。然后,您可以使用JavaScript迭代文件名,构建URL,并为每个文件名创建一个图像对象