onClick, onMousover und onMousout kombinieren
pascha
- javascript
0 jobo0 pascha0 tk0 Matthias Apsel
0 Matthias Apsel
hi,
ich bin neu hier und brauche mal bitte eure Hilfe. Ich bastel an einer Seite und möchte das wenn ich auf einen Hotspot mit der Maus gehe(onMausover), die Grafik ausgetauscht und eine Text im Formularfeld erzeugt wird. Das funktioniert auch. Wenn ich mit der Maus runter gehe (onMousover)soll die alte Grafik wieder erscheinen und das Formularfeld leer sein. Sollte ich aber auf den Hotspot klicken (onClick), solle die neue Grafik bleiben und der erzeugte Text im Formularfeld angezeigt werden.
Mein Problem ist, das onClick nicht funktioniert. Ich denke, das hier zwei Befehle sich behindern und hoffe, Ihr habt eine Lösung für mich.
Das ist das Skript welches ich über html eingebe.
``
onMouseover="u1.src='../assets/images/haus2.gif'; document.getElementById('FormsEditField12').value = ' nicht sehr schön';"
onClick="document.getElementById('FormsEditField12').value = ' nicht sehr schön'; u1.src='../assets/images/haus2.gif';"
onMouseout="u1.src='../assets/images/transp5.gif'; document.getElementById('FormsEditField12').value = ' ';"
Bitte nicht schlagen, ich bin ein Anfänger.
Schönes WE noch.
Grüße Pascha
Hallo,
<div id="test">test</div>
<script>
[code lang=javascript]
var myDiv = document.getElementById("test");
myDiv.onmouseover = function () {
alert("over");
}
myDiv.onclick = function () {
alert("click");
}
myDiv.onmouseout = function () {
alert("out");
}
</script>
[/code]
Gruß
jobo
Hallo,
<div id="test">test</div>
<script>
[code lang=javascript]
var myDiv = document.getElementById("test");
myDiv.onmouseover = function () {
alert("over");
}
myDiv.onclick = function () {
alert("click");
}
myDiv.onmouseout = function () {
alert("out");
}
> </script>
> [/code]
>
>
> Gruß
>
> jobo
Hallo joba,
danke für deine schnelle Hilfe. Ich hoffe ich bin nicht zu nervig, aber wo trage ich jetzt genau meine auszuführenden Aktionen ein, zwischen die Klammern?
Grüße Pascha
Hallo,
danke für deine schnelle Hilfe. Ich hoffe ich bin nicht zu nervig, aber wo trage ich jetzt genau meine auszuführenden Aktionen ein, zwischen die Klammern?
Statt den Aufrufen von alert() - deinen alten Code darfst du aber nicht einfach übernehmen, du musst bei onclick ein Flag setzen wodurch onmouseout ggf. davon abgehalten wird die Änderungen wieder Rückgängig zu machen.
Gruß,
Tobias
Om nah hoo pez nyeetz, pascha!
ergänzend:
Man sollte solche Änderungen durch das Ändern der Klassenzugehörigkeit realisieren.
ursprungsklasse = myelement.className; //wir merken uns die ursprüngliche Klasse
bei mouseover soll nur temporär geändert werden:
myelement.className = neuerName;
bei click soll endgültig geändert werden:
ursprungsklasse = neuerName; //wir ändern die ursprüngliche Klasse
bei mouseout
myelemet.className = ursprungsklasse;
Mach dir (z.B. mit Stift und Papier) klar, was dabei passiert.
Matthias
Om nah hoo pez nyeetz, pascha!
ich bin neu hier und brauche mal bitte eure Hilfe. Ich bastel an einer Seite und möchte das wenn ich auf einen Hotspot mit der Maus gehe(onMausover), die Grafik ausgetauscht
austauschen ist uncool, verschieben ist schöner.
Matthias