Hallo!
Wow. Danke für die schnelle Antwort.
Ich würde gerne eine Funktion schreiben, die sich irgendein Element per ID oder Class holt. Und dieses Element soll die Schriftfarbe bei mouseover verändern.
warum nimmst Du dafür nicht CSS?
Weil ich mich mehr mit JavaScript befassen will. Und zur Übung wollte ich mal das umsetzen.
Und jetzt habe ich absolut keine Ahnung wie ich das mit dem Mouseover anstellen soll.
Die Eventhandler-Eigenschaften von JavaScript-Objekten nehmen Funktionsreferenzen auf. Es kann sich dabei auch um eine Referenz auf eine anonyme Funktion handeln, die direkt an der entsprechenden Code-Stelle erzeugt wird.
Also etwas wie:
onmouseover = function() {
//js-code
}
document.getElementById("hallo").onmouseover = farbe;
Was sagt an _genau_ dieser Stelle ein alert() der gerade veränderten Eigenschaft?
Gar nichts. Soweit kommt es leider nicht. Die JavaScript-Konsole sagt mir: document.getElementById("hallo") has no properties. Und zwar bevor es überhaupt zum alert() kommt.
Vielen Dank für deine Antwort! Grüße, Elias
Hier nochmal das, wie ich das mit dem alert() gemacht habe. Ist das falsch?
<html>
<head>
<title>Test</title>
<script type="text/javascript">
document.getElementById("hallo").onmouseover = farbe; // an dieser Stelle hat document.getElementById("hallo") keine properties :-(
alert(document.getElementById("hallo").style.color);
function farbe() {
document.getElementById("hallo").style.color = "#FF0000";
}
</script>
</head>
<body>
<div id="hallo">
Hallo
</div>
</body>
</html>