mouseover mit getElementById?
$xNeTworKx
- javascript
0 MudGuard0 Thomas Meinike0 $xNeTworKx0 MudGuard
0 Struppi0 Ronny0 Struppi
Hola,
Ich bringe es einfach nicht zusammen, mit document.getElementById einen mouseover/mouseout Effekt zu erzielen. Der Grund, warum ich das so machen will, ist weil ich das Script für alle Unterseiten in einer externen Javascript Datei verwenden will, und manchmal wird es vorkommen, dass sich eine Grafik vor den mouseover/out Buttons auf der Webseite befindet, wodurch ich mit den Indexnummern der Grafiken nicht arbeiten kann.
Momentan sieht es so aus:
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
rechtslight = new Image();
rechtslight.src = "pics/button_nachrechts_light.jpg";
rechtsdark = new Image();
rechtsdark.src = "pics/button_nachrechts_dark.jpg";
function buttonswechseln(buttonid,zustand) {
document.getElementById(buttonid).src = zustand.src;
}
document.getElementByID ist laut Fehlermeldung immer Null oder kein Objekt? Weiß jmd. eine Lösung bzw eine andere Möglichkeit das Problem zu lösen?
P.S Wie kann man im Mozilla eigentlich Javascript Fehlermeldungen aktivieren?
$xNeTworKx.
Hi,
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
wo wird die Variable rechtsbutton wie definiert? Oder wolltest Du die Id 'rechtsbutton' übergeben?
P.S Wie kann man im Mozilla eigentlich Javascript Fehlermeldungen aktivieren?
Tools - Webdevelopment - Javascript Console
cu,
Andreas
Hallo,
P.S Wie kann man im Mozilla eigentlich Javascript Fehlermeldungen aktivieren?
Tools - Webdevelopment - Javascript Console
Oder einfach "javascript:" ueber die Adresszeile ausfuehren (ohne "-Zeichen).
MfG, Thomas
Hola,
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
wo wird die Variable rechtsbutton wie definiert? Oder wolltest Du die Id 'rechtsbutton' übergeben?
Das Problem ist, dass ich ja dann auch noch einen linksbutton habe und ich nicht für jeden Button eine eigenene Funktion verwenden will. Das Problem ist doch eigentlich, dass ich nicht weiß, wie ich der Funktion sagen kann, dass einmal der rechte, und ein anderes Mal der linke Button gemeint ist?
$xNeTworKx.
Hi,
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
wo wird die Variable rechtsbutton wie definiert? Oder wolltest Du die Id 'rechtsbutton' übergeben?
Das Problem ist, dass ich ja dann auch noch einen linksbutton habe
Du willst also die id übergeben, nicht die Variable namens rechtsbutton.
Wie ich bereits vermutet hatte.
Guck Dir also nochmal _GENAU_ an, was da oben von mir geschrieben steht.
cu,
Andreas
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
rechtslight = new Image();
rechtslight.src = "pics/button_nachrechts_light.jpg";rechtsdark = new Image();
rechtsdark.src = "pics/button_nachrechts_dark.jpg";function buttonswechseln(buttonid,zustand) {
document.getElementById(buttonid).src = zustand.src;
}document.getElementByID ist laut Fehlermeldung immer Null oder kein Objekt? Weiß jmd. eine Lösung bzw eine andere Möglichkeit das Problem zu lösen?
du übergibst der Funktion ja auch ein Objekt und keine ID.
Struppi.
Hola,
du übergibst der Funktion ja auch ein Objekt und keine ID.
..und wie kann ich eine ID übergeben?
Wenn ich mal einen statischen Wert zuweise, also...
rechtslight = new Image();
rechtslight.src = "pics/button_nachrechts_light.jpg";
rechtsdark = new Image();
rechtsdark.src = "pics/button_nachrechts_dark.jpg";
function buttonswechseln(zustand) {
document.getElementById("rechtsbutton").src = zustand.src;
}
.. würde es funktionieren, nur wie mache ich "rechtsbutton" dynamisch, damit ich zB auch "linksbutton" oder andere Grafiken ansprechen kann?
$xNeTworKx.
Hi,
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"
Schon mal so probiert?
onmouseover="buttonswechseln('rechtsbutton',rechtslight)" onmouseout="buttonswechseln('rechtsbutton',rechtsdark)"
Weil als erstes Argument willst Du ja einen String übergeben und als zweites eine Variable.
Grüße,
Ronny
Hi,
Weil als erstes Argument willst Du ja einen String übergeben und als zweites eine Variable.
Eigentlich übergibt das zweite Argument gar keine Variable, sondern ein in einer Variablen gespeichertes Image.
Grüße,
Ronny
onmouseover="buttonswechseln('rechtsbutton',rechtslight)" onmouseout="buttonswechseln('rechtsbutton',rechtsdark)"
Das war der springende Punkt.
greetz,$xNeTworKx.
Momentan sieht es so aus:
onmouseover="buttonswechseln(rechtsbutton,rechtslight)" onmouseout="buttonswechseln(rechtsbutton,rechtsdark)"rechtslight = new Image();
rechtslight.src = "pics/button_nachrechts_light.jpg";rechtsdark = new Image();
rechtsdark.src = "pics/button_nachrechts_dark.jpg";function buttonswechseln(buttonid,zustand) {
document.getElementById(buttonid).src = zustand.src;
}
Eigentlich willst du:
onmouseover="buttonswechseln('rechtsbutton',rechtslight)" onmouseout="buttonswechseln('rechtsbutton',rechtsdark)"
function buttonswechseln(buttonid, zustand) {
document.getElementById(buttonid).src = zustand.src;
}
Struppi.