加载多个动态图像
Onload Multiple Dynamic Images
function LoadPage (page) {
// each page contains 10 pictures
var endp = page*10;
// Empty the main container that contains the pictures
$('#container').empty();
// Rewrite the Page Menu
for (j=1;j<Math.abs(len/10);j++) {
$('#container').append("<a href='javascript: LoadData("+j+")'>"+j+"</a>");
}
// Add the image containers containing images
for (i=endp-10;i<endp;i++) {
$('#container').append("<div class='container' id="+i+" >");
$('#'+i).append("<img src="+x[i].getElementsByTagName('URL')[0].childNodes[0].nodeValue+" width='200'>");
$('#container').append("</div>");
}
// Have to call a function ' wall.reload(); ' once all the pictures are loaded!
setTimeout(function(){
if (wall) { wall.reload(); }
},2000);
}
这个函数被调用多次,每次调用一个页码。一切正常。我正在使用setTimeout()函数来延迟函数wall.reload(),但我不想这样做。相反,我希望函数等待,直到所有的图像加载,然后防火墙。reload()
谢谢。
你可以给你的图像标签添加一个onload属性。在这里,您将调用imageLoaded()之类的函数,该函数会增加imageCounter。如果imagecounter与您添加的图像数量匹配,它将调用wall.reload()。代码可能类似于以下内容:
var imagesLoaded = 0;
function imageLoaded(){
imagesLoaded++
if(imagesLoaded == numberOfImages)
wall.reload();
}
}
在image标签中:
<img src="asdf.jpg" onload="imageLoaded()">
function LoadPage (page) {
// each page contains 10 pictures
var endp = page*10;
// Empty the main container that contains the pictures
$('#container').empty();
// Rewrite the Page Menu
for (j=1;j<Math.abs(len/10);j++) {
$('#container').append("<a href='javascript: LoadData("+j+")'>"+j+"</a>");
}
// count of the loaded images
var counterLoaded = 0;
function waitReload(){
counterLoaded++;
// if all 10 images loaded
if (counterLoaded == 10){
if (wall){
wall.reload();
}
}
}
// Add the image containers containing images
for (i=endp-10;i<endp;i++) {
$('#container').append("<div class='container' id="+i+" >");
var img = document.createElement('img');
img.src = x[i].getElementsByTagName('URL')[0].childNodes[0].nodeValue;
img.setAttribute('width', '200');
$('#'+i).append(img);
$('#container').append("</div>");
// if image loaded - increment loaded images counter
img.onload = waitReload;
}
}
相关文章:
- 使用JavaScript根据窗口/视口的高度动态调整图像大小
- 动态更改'汉堡包'导航取决于BG图像
- 是否可以仅通过jQuery将图像替换为用户动态选择的另一个图像
- 可在多个相册文件夹中查找的动态图像库
- 使用jquery垂直对齐动态加载的图像
- 根据容器 DIV 中的图像动态调整容器 DIV 的大小
- 如何将任意数量的图像动态添加到源字符串位于数据库中的 Web 窗体
- 将图像动态添加到照片滑动
- 使用 JavaScript 和构造函数的动态变量名称:使用 EaselJS 将图像动态克隆到多个画布
- 可以使用图像URL为图像动态添加替代文本
- 在没有画布的javascript中使用自定义光标图像动态更改光标大小
- CSS背景图像动态调整大小
- 将图像动态添加到HTML字符串中
- 使用javascript将图像动态写入iframe
- 根据背景图像动态调整文本颜色
- 根据图像动态设置画布的宽度和高度
- 在html中将图像动态添加到滑块中
- 将不同尺寸的并排图像动态调整为相同高度
- 将图像动态加载到 jQuery iViewer 中
- 如何使用javascript将图像动态地放在锚标记中