Dynamisches Stylesheet mit Nodes
JavaScript-Freund
- javascript
0 bleicher
Hallo ihr,
ich möchte gerne alternative Designs auf meiner HP anbieten, ein normales, und ein etwas verspielteres. Bei meiner Recherche bin ich auf diesen Foreneintrag gestoßen:
http://forum.de.selfhtml.org/archiv/2007/1/t143826/
Meine beiden Stylesheets heißen style1.css und style2.css, darin ist jrweils aus Testzwecken h1 auf rot bzw. auf grün gesetzt, und die HTML-Datei besteht auch nur aus einem <h1> und einem Link zur javascript:aendern();
Ich habe mir folgendes Skript geschrieben:
function aendern () {
// Stylesheet-Eintrag entfernen
var child = document.getElementsByTagName("head")[0].lastChild;
dummy = document.getElementsByTagName("link")[0].removeChild(child);
// neues <link> erzeugen
var myLink = document.createElement("link");
// Attribute erstellen
// <link rel="" href="" type="">
var myLink_rel = document.createAttribute("rel");
myLink_rel.nodeValue = "stylesheet";
var myLink_type = document.createAttribute("type");
myLink_type.nodeValue = "text/css";
var mylink_href = document.createAttribute("href");
mylink_href.nodeValue = "style2.css";
// Attribute hinzufügen
myLink.setAttributeNode(myLink_rel);
myLink.setAttributeNode(myLink_type);
myLink.setAttributeNode(myLink_href);
// Das Element wieder hinzufügen
document.getElementByTagName("head")[0].appendChild(myLink);
}
Aber das funktioniert nicht... Obwohl es genau so ist, wie in den Beispielen auf Selfhtml.. Was ist falsch?
Gruß
Jens
Grüße,
selbst wenn es erfolgreich verläuft (tut es? wie sieht das dom nach dem ausführen aus?) - ich habe so leichte zweiffel, dass der browser die seite neurendern würde - und wenn doch, wäre ja der wert wieder auf default.
MFG
bleicher