想要进行漂亮的图像加载,但是我的图像是由ajax(prepend)加载的。如何在每个图像上执行load()。我希望它一个一个地加载,顺序并不重要。在图像加载之前我想要一些加载gif。
以下是我的尝试:
...
...
svc.Device = currentCell.detailTextLabel!.text!
svc.desc = currentCell.textLabel!.text!
self.navigationController?.pushViewController(svc, animated: false)
这是我的尝试:
.done(function( data ) {
var obj = JSON.parse(data);
for(i = 0; i < obj.length; i++)
if(obj[i].indexOf("blank.gif") > -1)
continue;
else
$("#images_for_this_gallery").prepend("<div id='fd_" + i + "' class='featured_image_div'>" +
"<span class='imageloading'>loading</span>" + //LOADING MEESAGE FOR EACH IMAGE
"<img class='images' src='" + image_path + obj[i] + "' />" + // IMAGE FOR NICE LOAD
"<a href='#' id='" + obj[i] + "' class='image_delete'>X</a>" +
"</div>").hide();
});
这是另一次尝试:
$(".images").each(function() {
if (this.complete) {
// this image already loaded
// do whatever you would do when it was loaded
} else {
$(this).load(function() {
$(".imageloading").hide();
$(this).show();
});
}
});
它适用于普通图像,但不适用于ajax生成的图像......
谢谢!