Moin!
Ich möchte auf meiner HP ein kleines Tool veröffentlichen, mit dem man farbige Scrollbars erstellen kann. Ich habe es wie folgt umgesetzt: Oben kann der User für die einzelen CSS-Attribute den Farbcode in ein Textfeld eingeben. Die Farbcode werden in einzelnen Variablen gespeichert. Wenn der User jetzt auf den submit-Button klickt, soll sich ein Textfeld unter dem Formular einfärben.
Ich will dich ja nicht enttäuschen oder deine Idee schlechtreden, aber dennoch: Es gibt im CSS-Standard keine farbigen Scrollbalken. Und auch Microsoft ist von dem Gedanken wieder ab - Farbige Scrollbalken gibts nur im IE 5.0 und 5.5, die neueste Version 6.0 zeigt sie nur noch dann an, wenn die Seite im Quirks-Modus angezeigt wird - der hat aber gewisse Nachteile. Besser ist der Standard-Modus, weil damit gewisse Dinge endlich gemäß der Festlegung des W3C und übereinstimmend mit allen anderen Browsern gerendert werden.
Wenn du CSS-Eigenschaften ändern willst, gibst du dem zu ändernden Element am besten eine ID und greifst mit getElementById darauf zu. Die CSS-Eigenschaften heißen in Javascript genauso wie im CSS (alles Kleinbuchstaben) mit einer Ausnahme: Wenn ein CSS-Wort mit Bindestrich geschrieben wird, wird das Wort in Javascript ohne Bindestrich, dafür mit Großbuchstabe geschrieben. Beispiel:
CSS: background-color
JS: backgroundColor
Insgesamt:
document.getElementById("deineID").style.backgroundColor = "#FFFF00"
wäre gleichbedeutend mit folgendem CSS:
#deineID { background-color:#FFFF00; }
Bedenke: Nicht alle Browser kennen schon getElementById (Netscape 4, IE 4). Du solltest zur Vermeidung von Fehlern den Code nur ausführen, wenn der Browser diese Methode kennt: if (document.getElementById) {...} Da die alten IEs keine Farbscrollbalken kennen, ist eine document.all-Methode nicht notwendig.
Weiterhin solltest du natürlich prüfen, ob deine gewünschte CSS-Eigenschaft javascriptseitig auch existiert, sonst gibts vielleicht ebenfalls Fehler. Die Methode ist die gleiche.
- Sven Rautenberg