Felix Riesterer: Bild Flackert bei onmouseover und onmouseout

Beitrag lesen

Liebe(r) c0de,

ich habe selbst gerade eine Klapp-Navi gebastelt, in der ich auch dieses Problem lösen musste. Dabei habe ich letzten Endes einen "globalen" mousemove-Event benutzt (document.onmousemove), der selbsttätig feststellt, über welchem Element er hovert.

Dabei prüfe ich, ob das Zielelement (e.target || e.srcElement) innerhalb eines von mir definierten Vorfahrenelements stattfindet, indem ich das DOM von meinem Zielelement aus nach oben abklappere. Das kannst Du sicherlich auch.

Wenn Du nun über Deinem Bild hoverst, dann würde das Abklappern des DOM ja letzten Endes zu demselben Ergebnis führen (falls Dein Bild oder span ein Nachfahrenelement Deines div ist), sodass eben kein Ausblenden stattfindet.

Ich habe immer wieder die Erfahrung gemacht, dass man sich leichter tut, wenn man einen globalen Eventlistener definiert (also document.onmouse_irgendwas), als wenn man an viele Elemente einzelne Eventlistener ansetzt, die sich dann gegenseitig bekriegen.

Liebe Grüße,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)