blob: 63a6bdfcc059a54bd239d5d29234fa216a162580 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
(function() {
window.imagesLoad = function(images) {
images = images || document.getElementsByTagName('img');
var imagesCount = images.length, loadedCount = 0, image;
var i, j, loaded = false, cbs = [];
imagesCount < 1 && (loaded = true);
for (i = 0; i < imagesCount; i++) {
image = images[i];
image.complete ? handleImageLoad() : image.addEventListener('load', handleImageLoad);
}
function handleImageLoad() {
loadedCount++;
if (loadedCount === imagesCount) {
loaded = true;
if (cbs.length > 0) {
for (j = 0; j < cbs.length; j++) {
cbs[j]();
}
}
}
}
return {
then: function(cb) {
cb && (loaded ? cb() : (cbs.push(cb)));
}
};
};
})();
|