MudGuard: style-Element erzeugen per Script

Beitrag lesen

Hi,

ich versuche, ein style-Element per Javascript zu erzeugen.

  
var colors = new Array( "red", "blue", "yellow", "green", "teal", "fuchsia", "silver", "gold" );  
function restyle()  
{  
    var col = colors[Math.floor(Math.random() * colors.length)];  
    var mytext = "body { background-color: " + col + "; }";  
    var textNode = document.createTextNode(mytext);  
  
    var headElem = document.documentElement.firstChild;  
  
    var styleElem = document.createElement("style");  
    styleElem.setAttribute("type", "text/css");  
    styleElem.appendChild(textNode);                //hier krachts im IE  
  
    headElem.appendChild(styleElem);                //hier krachts im IE  
}  

Das funktioniert in Opera 7.53 und 8.01 sowie in Geckos FF 1.0.6 und Moz 1.7.3 wunderbar.
Im IE bekomme ich beim Einhängen des style-Elements in den Head oder beim Einhängen des Textknotens in das style-Element (je nachdem, welche der beiden Aktionen zuerst stattfinden) eine Fehlermeldung:
Fehler: Unerwarteter Aufruf oder Zugriff

Wie kann ich das im IE hinbekommen?

Da im Echt-Einsatz User-Eingaben in das Stylesheet mit reinsollen (anstelle der jetzt nur zufällig gesetzten Farbe), kann ich das style-Element nicht beim Seitenaufbau per document.write schreiben.

headElem und styleElem enthalten die korrekten Elemente, das hab ich schon überprüft.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Schreinerei Waechter
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.