Warum setTimeout () - Funktion wird nur einmal?

Mache ich ein javascript bookmarklet, das die Größe aller Bilder in regelmäßigen Abständen.

javascript: function x(){
    for(i=0;i<=document.getElementsByTagName('img').length;i++)
        document.getElementsByTagName('img')[i].width+=1;
};
t = window.setTimeout("x()",100);
void(0);

Aber es läuft nur einmal. Was ist hier das problem??

  • Was versuchen Sie zu erreichen? Auch deine for-Schleife am Ende wohl gemeint sein i++.
  • Sie sollten das nicht tun i<=document.getElementsByTagName('img').length. Sie zulassen, indem Sie alle Bilder im Dokument, so oft, wie es Bilder. Sie sollten cache die Auswahl. var images = document.getElementsByTagName('img'); for( var i = 0, len = images.length; i < len; i++ ) Beachten Sie auch, dass ich < statt <= als gut.
  • scheint irgendwie nutzlos, da wenn Sie nicht halten Sie die Stoppuhr an Bildern wird wachsen für immer.
InformationsquelleAutor Shubham | 2010-12-24
Schreibe einen Kommentar