000
05.10.2005, 16:56
Kriz
|
Folgendes:
Momentan löse ich einen Hovereffekt für HTML Elemente mit den üblichen "umständlichen" Lösungswegen:
onmouseover="hover(AKTION, 'ELEMENT_ID');" onmouseout="hover(AKTION, 'ELEMENT_ID');" wobei AKTION entweder 1 für Hintergrundfarbe ändern via CSS bzw. 0 für ursprüngliche Hintergrundfarbe wiederherstellen ist und ELEMENT_ID die ID des betreffenden HTML Elements ist. Die JS Funktion sieht dabei so aus:
function hover(aktion, id) { if(aktion == 1) { document.getElementById(id).style.backgroundColor = "yellow"; } else { document.getElementById(id).style.backgroundColor = "white"; } } Soweit sogut. Irgendwie beschleicht mich aber das Gefühl, daß dieses irgendwie auch einfacher gehen müsste. Ist es möglich, daß ich anhand der JS Eventhandler rauskriegen kann, _welches_ HTML Element das Event ausgelöst hat? Dann könnte man sich eine Menge unnützen Schreibkram ersparen und die ID des Elements bequem in Erfahrung bringen und wie oben gesehen nutzen. Idealerweise sollte die JS Funktion nur noch so aussehen:
function hover(aktion) { id = // Bla bla ID rauskriegen blub blubber // Rest wie oben } Hat da jemand diesbezüglich eine konforme Idee?
--
K:R-I)Z++ "CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp In memory of Voice ( 2005/03/30)
|
|
Profil || Suche
|
001
05.10.2005, 18:00
hausi
|
Über die aktion (was übrigens ein Event ist), geht das nicht. Ich mache das aber immer so, dass ich im Handler den Aufruf so mache:
onmouseover="hover( this, true )" onmouseout="hover( this, false ) Dann kannst du im JavaScript einfach folgenden Code verwenden:
funtion hover( element, do_hover ) { if( do_hover ) element.style.backgroundColor = "yellow"; else element.style.backgroundColor = "white"; } Ist jetzt nicht getestet, dürfte aber keinen Fehler haben :).
--
|
|
Profil || Suche
|
002
05.10.2005, 19:02
Kriz
|
Na, das hört sich doch schonmal gut an. Ich probier's gleich mal aus :)
--------
Wunderbar, funzt. Danke Superhausi!
--
K:R-I)Z++ "CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp In memory of Voice ( 2005/03/30)
Dieser Beitrag wurde am 05.10.2005 um 19:06 von Kriz bearbeitet.
|
|
Profil || Suche
|