lighti: Mit DOM "onclick" setzen?

Beitrag lesen

Hallo,

ich beschäftige mich zur Zeit mit Javascript und bin dabei auf ein Problem gestoßen.

Ich möchte mittels DOM ein <p>-Element an den <body> hängen. Dies sieht bei mir so aus und klappt auch einwandfrei:

----------------------------------------------------------
var text = document.createTextNode("Hallo Welt!");
var element = document.createElement("p");

element.appendChild(text);

document.getElementsByTagName('body')[0].appendChild(element);
-----------------------------------------------------------------

Jetzt möchte ich dem <p> Element das onclick-Attribut hinzufügen. Dazu benutze ich setAttributeNode():

----------------------------------------------------------
var attribut = document.createAttribute("onClick");

attribut.nodeValue = "alert('Juhu!')";

document.getElementsByTagName("p")[0].setAttributeNode(attribut);
----------------------------------------------------------

Mein Problem ist, dass der IE das anscheinend nicht versteht (in anderen Browsern, wie Firefox und Opera, geht es einwandfrei).

Braucht der IE also eine "Alternativversion" oder wird das bei ihm so oder so nicht funktionieren?

Bei Selfhtml steht ja, dass der IE mit setAttribute() und setAttributeNode() Probleme bezüglich der Groß/Kleinschreibung hat, aber bei mir funktioniert weder "onclick" noch "onClick" o.ä. ?

Danke für jede Hilfe,

Lighti