Handler des Elements unterm Mauszeiger bzw. Bild
Dominic P.
- javascript
0 molily0 Cyx230 Dominic P.
Hallo,
ich habe eine etwas komplizierte Frage. Deshalb zuerst den Sachverhalt.
Ich Versuche eine Art, na wie würde man es nennen, Terminplaner - das klingt doch gut oder? - für ein Browsergame zu bauen. Wie dem auch sei. Der ist ja eigentlich fertig und der Themenbereich wäre - bei Problemen - ja eher PHP. ABER: ich möchte etwas in den Planer "ziehen". Da dass nicht so ganz funktioniert wie ich es mir vorstelle habe ich da schon Abstriche gemacht.
Nun soll man auf ein Bild klicken, das Bild (Fadenkreuz) hängt sich an den Mauszeiger und geht erst weg, wenn man in einen bestimmten Bereich klickt (onMouseDown). Soweit funktioniert es schon. Das Problem besteht darin, dass ich nun das Bild (der Terminplan Space) herausfinden muss bevor er den Termin eintragen kann.
Wäre super wenn mir jmd helfen könnte. Vielen Dank im voraus. Bei Fragen einfach antworten (schreibe manchmal Dinge die niemand versteht ;)).
mfg. Dominic P.
Hallo,
ich möchte etwas in den Planer "ziehen". Da dass nicht so ganz funktioniert wie ich es mir vorstelle habe ich da schon Abstriche gemacht.
Nun soll man auf ein Bild klicken, das Bild (Fadenkreuz) hängt sich an den Mauszeiger und geht erst weg, wenn man in einen bestimmten Bereich klickt (onMouseDown). Soweit funktioniert es schon. Das Problem besteht darin, dass ich nun das Bild (der Terminplan Space) herausfinden muss bevor er den Termin eintragen kann.
Ich verstehe deine Frage nicht ganz, vielleicht hlift dir das weiter:
An irgendeinem Element bzw. Objekt hängt dein onmousedown-Handler. In der Handlerfunktion greifst du auf das Event-Objekt zu. Über ds Eventobjekt kannst du über die Eigenschaften target (Gecko, Opera, KHTML; DOM Events) bzw. srcElement (Internet Explorer) auf das Elementobjekt zugreifen, bei dem das Ereignis ursprünglich passierte. Das wird wohl in deinem Fall das fragliche img-Elementobjekt sein.
http://www.quirksmode.org/js/events_properties.html#link2
Ein Onlinebeispiel deines Problems wäre hilfreich.
Mathias
Leider hilft mir das nicht weiter. Aber vielen Dank für deine Antwort. Ich suche eine Mgl. per Koordinate bzw Mausposition (ohne MouseOver/move) das Element zu bestimmen.
Hallo,
Nun soll man auf ein Bild klicken, das Bild (Fadenkreuz) hängt sich an den Mauszeiger und geht erst weg, wenn man in einen bestimmten Bereich klickt (onMouseDown). Soweit funktioniert es schon. Das Problem besteht darin, dass ich nun das Bild (der Terminplan Space) herausfinden muss bevor er den Termin eintragen kann.
onmousedown erfolgt doch zuerst beim angeklickten Bild.
Dort kann eine Funktion mit Wertübergabe aufgerufen oder eine
Variable gesetzt werden (u.U. auch per "this" statt Wert).
Im "bestimmten Bereich" erfolgt dann ein onmouseup als Bestätigung,
so ähnlich habe ich jedenfalls bei einem füllbaren Warenkorb/Shop
gemacht. Ein onmouseup woanders auf der Seite verwirft dann die
Aktion.
Grüsse
Cyx23
Hallo,
Nun soll man auf ein Bild klicken, das Bild (Fadenkreuz) hängt sich an den Mauszeiger und geht erst weg, wenn man in einen bestimmten Bereich klickt (onMouseDown). Soweit funktioniert es schon. Das Problem besteht darin, dass ich nun das Bild (der Terminplan Space) herausfinden muss bevor er den Termin eintragen kann.
onmousedown erfolgt doch zuerst beim angeklickten Bild.
Dort kann eine Funktion mit Wertübergabe aufgerufen oder eine
Variable gesetzt werden (u.U. auch per "this" statt Wert).
Im "bestimmten Bereich" erfolgt dann ein onmouseup als Bestätigung,
so ähnlich habe ich jedenfalls bei einem füllbaren Warenkorb/Shop
gemacht. Ein onmouseup woanders auf der Seite verwirft dann die
Aktion.Grüsse
Cyx23
Vielen Dank für die Antwort. Diese Mgl. hab ich auch schon versucht. Leider habe ich festgestellt, dass das Bild (Fadenkreuz) über dem Bild mit der ID die ich benötige und unter dem Mauszeiger ist. Somit kann ich kein Event wie zB. MouseUp o.ä. verwenden.
Hallo Dominic
... Leider habe ich festgestellt, dass das Bild (Fadenkreuz) über dem Bild mit der ID die ich benötige und unter dem Mauszeiger ist.
Habe ich das jetzt richtig verstanden?
Du nagels praktisch ein Bild unter den Mauszeiger und bekommst dadurch vom
Event immer nur dieses zurück und nicht das darunterliegende, welches du
benötigst?
Musst du unbedingt das Bild unter den Mauszeiger kleben?
Wenn du stattdessen einen anderen cursor definierst, bekämst du direkt das
richtige Bild.
Wenn du es allerdings kompliziert haben willst, dann müsstest du die
Mausposition ermitteln, und diese aufwändig mit den Bereichen, die die Bilder
einnehmen vergleichen. Wenn die Bilder in einem festen Raster angeordnet sind,
lässt sich auch errechnen, welcher der Bereich der unter dem Mauszeiger ist.
Auf Wiederlesen
Detlef
Musst du unbedingt das Bild unter den Mauszeiger kleben?
Wenn du stattdessen einen anderen cursor definierst, bekämst du direkt das
richtige Bild.
Hallo Detlef,
danke für die Idee mit dem curser! Das ich darauf nicht gekommen bin. Das ist ne echt gute Idee. Mach ich gleich mal. Danke. :)