JS: Ist Maustaste gedrückt? Bei Mouseover
Muskelkatermann
- javascript
0 wahsaga
Hi,
habe folgendes Problemchen.
Ich habe einen Bereich(tabellenzelle) der bei Mouseover einen frame scrollen soll.
Funktioniert auch wunderbar!
Es soll aber so sein, das es bei Mouseover nur gescrollt wenn die linke Maustaste gedrückt ist.
Habe zum Abfragen bisher nur event.button gefunden.
Da event.button sich aber nur auf das auslösende Ereignis bezieht, und der auslöser ja ein Mouseover war, geht das leider nicht.
Hat jemand ne andere Möglichkeit den Mausstatus abzufragen?
Danke voraus
Grüße
hi,
Es soll aber so sein, das es bei Mouseover nur gescrollt wenn die linke Maustaste gedrückt ist.
Also ist mouseover doch uninteressant - nur das Drücken der Maustaste auf einem Element interessiert dich.
Habe zum Abfragen bisher nur event.button gefunden.
Da event.button sich aber nur auf das auslösende Ereignis bezieht, und der auslöser ja ein Mouseover war, geht das leider nicht.Hat jemand ne andere Möglichkeit den Mausstatus abzufragen?
Eventhandler onMousedown
gruß,
wahsaga
Hi,
danke erstmal für die schnelle antwort, aber so kommt das nicht hin.
Ich muss eine Funktion auffrufen "onMouseOver" aber nur dann wenn die linke Maustaste gedrückt ist.
Praxisbeispiel:
Ich habe eine Selectliste, die Reihenfolge der Elemente in der Liste kann per Drag und Drop bestimmen.
Wenn ich ein Element jetzt in einen Bereich platzieren möchte, das grade nicht sichtbar ist (weil liste gescrollt wird), bewegt man die Maus, während des Drag&Drop über den Oberen Rand, und die liste scrollt schrittweise nach oben.
Dieser Bereich über den man mit der Maus geht könnte so aussehen:
<table border="0">
<tr>
<td onMouseOver="if(linke maustaste gedrückt)ScrollUp(true);" onMouseOut="ScrollUp(false);">
</tr>
</table>
Grüße
hi,
Praxisbeispiel:
Ich habe eine Selectliste, die Reihenfolge der Elemente in der Liste kann per Drag und Drop bestimmen.
Wenn ich ein Element jetzt in einen Bereich platzieren möchte, das grade nicht sichtbar ist (weil liste gescrollt wird), bewegt man die Maus, während des Drag&Drop über den Oberen Rand, und die liste scrollt schrittweise nach oben.
Darunter kann ich mir wenig vorstellen.
Ich muss eine Funktion auffrufen "onMouseOver" aber nur dann wenn die linke Maustaste gedrückt ist.
Wenn du das wirklich für erforderlich hältst, dann nutze halte beide Eventhandler, und setze dir Status-Flags, um abprüfen zu können, ob vor dem einen auch der andere stattgefunden hat.
gruß,
wahsaga
Hallo wahsaga, Muskel,
Wenn ich ein Element jetzt in einen Bereich platzieren möchte, das grade nicht sichtbar ist (weil liste gescrollt wird), bewegt man die Maus, während des Drag&Drop über den Oberen Rand, und die liste scrollt schrittweise nach oben.
Darunter kann ich mir wenig vorstellen.
Ähnlich wie z.B. beim Explorer wenn ich ein Objekt in ein Verzeichnis verschieben möchte das im Baum oberhalb oder unterhalb des sichtbaren Bereichs steht.
Wenn du das wirklich für erforderlich hältst, dann nutze halte beide Eventhandler, und setze dir Status-Flags, um abprüfen zu können, ob vor dem einen auch der andere stattgefunden hat.
Keine schlechte Idee.
In den Tips & Tricks ist ein interessanter Ansatz zu finden. onmouseup müsste man überprüfen ob die Maus sich über dem Ziel befindet und kann anschließend an dieser Stelle einfügen.
Gruß,
small-step