在阵列中预加载图像(并等待图像下载)
Preloading images in an array (and waiting until they have downloaded)
所以我遇到了另一个问题。
当我开始重新制作我正在制作的网页时,我想到了一个主意——为什么不让页面预加载材料,在这样做的同时,显示一个加载屏幕?我为此做了一个函数,但问题是,它开始做它应该做的事情,直到图像预加载的open()部分。它根本不起作用。是因为我给了它论据的部分,才导致它停在那里?有更好的方法吗?
function mainPageLoad() {
var loadScreen = document.getElementById('pageload');
loadScreen.innerHTML = "<p>Loading<span id='loadingWhat'>...</span></p><img src='images/loading.gif?v2'>";
var loadspan = document.getElementById('loadingWhat');
loadspan.innerHTML = " images";
preloadImages(["images/logo.jpg"])
//loadspan.innerHTML = " content";
//preloadContent([""]);
}
function preloadImages() {
var images = new Array();
var imagesToLoad = arguments.length;
document.writeln(imagesToLoad);
var imagesLoaded = 0;
document.writeln(imagesLoaded);
for (i = 0; i < arguments.length; i++) {
document.writeln("Loading images.");
images[i] = new XMLHttpRequest();
document.writeln("Made object");
images[i].open("GET", arguments[i], true);
document.writeln("Well, that worked.");
images[i].send(null);
document.writeln("Sent.");
images[i].onreadystatechange = function() {
document.writeln("Ready state change!");
if (images[i].readystate == 4 && images[i].status == 200){
imagesLoaded = imagesLoaded + 1;
window.alertln("We have loaded another image.");
window.alertln("Image" + String(imagesLoaded) + "out of" + String(imagesToLoad));
}
}
}
}
window.onload = init;
这里有一种非常简单的方法来预加载图像,并在图像加载完成时调用回调,这是一个相关的先前问题/答案:支持事件的图像预加载程序javascript。
相关文章:
- 在通过child.print()打印之前,我如何等待图像加载到我的新窗口中
- 预加载图像PHP并在JS中等待直到完成
- iFrame.load事件未等待预加载图像完成
- 在阵列中预加载图像(并等待图像下载)
- 如何在等待下载后立即显示图像
- JavaScript:从javascript加载图像,然后等待该图像的“load”事件
- j查询使用动画更改图像并等待它触发超链接
- 是否可以在 spotfire 文本区域中显示图像/消息以等待加载数据
- 等待使用 JavaScript 和 Ajax 的图像
- 如何等待加载带有javascript的图像
- 循环读取图像,等待其加载
- HTML,使页面看起来准备就绪(没有选项卡旋转轮),而只是等待图像
- Javascript - 等待图像加载
- AngularJS决心等待外部图像加载
- Jquery ajax,等待图像或iframe完全加载后再启动函数
- Javascript(jQuery)效果等待加载图像
- jquery瀑布插件's等待图像加载不起作用
- 等待添加到CSS的图像加载-JQuery
- 正在等待在下划线模板中加载图像
- 等待图像加载后再继续