mathefritz: Diskussion zu .."Tutorials/Umgang_mit_Callback-Funktionen'

also mir scheint die einfachste Lösung gegen 'Beispiel: "kaputt" '
in Umgang_mit_Callback-Funktionen
folgendermassen

function nerveBesucher () {
    var p = document.getElementsByTagName("p"), i; var s;
 
    for (i = 0; i < p.length; i++) { s = (i+1).toFixed(0);
        p[i].onclick = function () {
            alert("Sie haben auf den " + s + ". Absatz geklickt!");
        };
    }
}

zu sein

  1. Tach!

    also mir scheint die einfachste Lösung gegen 'Beispiel: "kaputt" '
    in Umgang_mit_Callback-Funktionen
    folgendermassen

    function nerveBesucher () {
        var p = document.getElementsByTagName("p"), i; var s;
     
        for (i = 0; i < p.length; i++) { s = (i+1).toFixed(0);
            p[i].onclick = function () {
                alert("Sie haben auf den " + s + ". Absatz geklickt!");
            };
        }
    }
    

    zu sein

    Nein, dabei verschiebst du das Problem mit dem i lediglich auf s. Das s ist immer noch eine gemeinsam genutzte Variable im äußeren Scope und keine individuelle in der onclick-Funktion.

    dedlfix.