onmouseover auf einem div sendet doppelte anfragen
Frank2342342
- javascript
0 anyone
Hallo,
ich möchte gerne immer eine Methode aufrufen, wenn sich die Maus "onmouseover" über einem bestimmten DIV befindet.
document.getElementById("foo").onmouseover= function {
foo1Methode();
}
document.getElementById("foo").onmouseout= function {
foo2Methode();
}
<body>
...
<div id="foo">
<h1>foo</h1>
<p>foo foo <img src="foo.jpg" /> foo </p>
</div>
</body>
Doch seltsamerweise schickt JS jetzt immer, wenn ich einmal über das DIV gehe:
foo1Methode();foo2Methode();foo1Methode();
und wenn ich die Maus aus dem DIV hinausbewege:
foo2Methode();foo1Methode();foo2Methode();
Also quasi immer die doppelte Anfrage. Auch wenn ich über das Bild im DIV gehe, oder über die Header Überschrift schickt er ein zusätzliches onmouseout und over!
Versteht jemand warum das passiert und wie man es verhindern kann?
Vielen Dank!!!
Hi,
Ich hatte neulich das gleiche Problem beim Aus- und Einfahren eines Menüs.
Grundsätzlich konnte ich mein Problem nicht lösen aber zumindest die Symtome bekämpfen, indem ich eine weitere globale Variable ins Spiel gebracht habe.
Wenn diese Variable 1 ist darf foo1Methoda() laufen. Wenn sie 3 ist foo2.
if(i == 1) { foo1
Während foo1 läuft gibst du der Variablen den Wert 2 und verhinderst damit dass weder foo1 erneut noch foo2 laufen können.
Am Ende von foo1 vergibst du den Wert3 und erlaubst damit foo2 zu laufen.
Ich hoffe dir mit meinen bescheidenen Kenntnissen helfen zu können :)
LG
Danke, gute Idee werde ich mal ausprobieren!