javascript - le chargement de l'image js n'est pas exécuté après le chargement de l'image
大家讲道理
大家讲道理 2017-05-19 10:12:08
0
4
569

1. L'effet supposé est que chaque fois qu'une image est chargée, alertez "1", mais l'effet réel est qu'une fois toutes les images chargées, alertez 4 fois
2 Voici le code, aidez-moi à l'expliquer.
//imgArray[ ] Il y a 4 liens d'images ici, je ne les écrirai pas s'ils sont trop longs
var count = 0;

for (var i = 0; i < imgArray.length; i++) {
    var imgobj = new Image();
    imgobj.onload = function () {
        alert("1");
        if (count == imgArray.length - 1) {
            loading.style.display = "none";
        }
        ++count;

    };

    imgobj.src = imgArray[i];
}
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(4)
phpcn_u1582
// 这是经典闭包问题了,最简单的方法,var改成let试试
for (let i = 0; i < imgArray.length; i++) {
    let imgobj = new Image();
    imgobj.onload = function () {
        alert("1");
        if (count == imgArray.length - 1) {
            loading.style.display = "none";
        }
        ++count;

    };

    imgobj.src = imgArray[i];
}
仅有的幸福

Écrivez une méthode de chargement et cela se fait de manière récursive

巴扎黑

var count = 0;
for (var i = 0; i < imgArray.length; i++) {

(function(){
    var imgobj = new Image();
    imgobj.onload = function () {
        alert("1");
        if (count == imgArray.length - 1) {
            loading.style.display = "none";
        }
        ++count;
    };
    imgobj.src = imgArray[i];
})(i)

}

仅有的幸福

Le problème a été résolu. Il se pourrait que la photo ait été mal citée. Désolé de faire perdre du temps à tout le monde !

data:image/jpeg;base64,/9j/4AAQSkZJRgABAQIAJgAmAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKCh Mo GhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK... légèrement....
Ce ci-dessus est l'adresse de l'image référencée, remplacez-la par la suivante et elle s'exécutera normalement,
https :/ /ss1.bdstatic .com/70cF…

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal