Diana: Problem document.getElementById("box7").onclick=

Ich habe folgendes Problemchen . Ich rufe mittels klick auf ein Image eine function auf , welche mir einen onClick auf das div mit id box7 setzen soll . die funktion testeventhinzufugen() wird auch einwandfrei aufgerufen , nur leider setzt er mir dann nicht onClick auf das div box7 element sondern giebt gleich den alert aus . Woran kann das liegen ? Habe schon einiges gegoogelt , genauso nochmal selfhtml durchgeblättert und gelesen aber finde den Fehler leider nicht :( .

function testeventhinzufugen(){
 document.getElementById("box7").onclick = alert("Ausgabetest");

}

  1. Hallo,

    function testeventhinzufugen(){
    document.getElementById("box7").onclick = alert("Ausgabetest");
    }

    Du weist an dieser Stelle der Eigenschaft onclick des Knotens document.getElementById("box7") als Wert den Rückgabewert der Anweisung alert('...'); zu.
    Das heißt, die Funktion wird sofort ausgeführt.

    Was Du möchtest, ist aber, der Eigenschaft onclick eine Referenz auf eine auszuführende Funktion zuzuweisen:

    // Beispiel (geht auch anders)
    function testeventhinzufugen(){
       document.getElementById("box7").onclick = function() { alert("Ausgabetest"); }
    }

    So long,
    Mr. Horse

    --
    "No, Sir, I don't like it."
    1. DANK DIR :)) nun gehts .