|
|||
"Hyperglobal" Mouse Events?
Hey Leute.
Ich kenne (und habe keine ... gefunden) Möglichkeit js mouse events "höher" als an "window" oder "document" zu binden. Es geht um eine kleine Drag & Drop Sache. Wenn man anfängt zu draggen, soll onmouseup das draggen wieder unterbunden werden, wie üblich. nur wenn man während des draggens ausserhalb von window oder document ist, (zB die Konsole bzw der Insepktor oder das Menü [beides getestet in Chrome]) dann kann man wieder weiter draggen obwohl man halt... nicht mehr draggt. Also: Kann man irgendwie "superglobale" maus events einfangen? Das das irgendwie geht weiß ich aus dem Browser Game die Stämme, dort kann man die Map scrollen, allerdings auch während man über die Konsole oder das Menü "draggt":... Jemand eine Idee? vielen Dank!
__________________
Das Leben ist wie ein Hermeneutischer Zirkel - man muss es erst verstanden haben bevor man es verstehen kann |
Sponsored Links |
Sponsored Links |
|
|||
Es muss aber gehen :/
Kennst du das erwähnte browser game? Dort gibt es eine javascript game map. Da funktioniert es. Also schritt für schritt das Problem: -> Der User hält die linke maustaste gedrückt und bewegt die map -> Er bewegt sie so weit nach oben (die maus) das sie im browser menü landet -> Nun wird die map natürlich nicht bewegt -> Er lässt die maus los. das mouse up event wird natürlich auch nicht eingefangen... -> Sodass die Map, ohne die maus gedrückt zu halten weiter bewegt wird, sobald die maus wieder ins document komt. Verständlicher? ^^
__________________
Das Leben ist wie ein Hermeneutischer Zirkel - man muss es erst verstanden haben bevor man es verstehen kann |
|
||||
Zitat:
|
|
|||
Also ich habe mir das erwähnte Game jetzt nicht angesehen - vielleicht verwendet das irgend eine Flash-Komponente, oder so. Da ist das natürlich was anderes. In Javascript kann man generell keine Mausevents abfangen, die außerhalb des Browserfensters sind. Das wäre zu unsicher.
Es gibt eine Ausnahme: Wenn man im Browserfenster klickt (Mousedown) und etwas, wie bei Drag and Drop aus dem Fenster herauszieht. Dann wird das Mousemove und Mouseup auch dann noch ausgelöst, wenn der Cursor außerhalb des Anzeigebereiches des Browserfensters ist. Auf meiner Homepage habe ich so verschiebbare Fenster, die ich gerade überarbeite. Die kann man auch aus dem Fenster herausschieben, bis sie nicht mehr sichtbar sind. [Edit] Ich glaube, das funktioniert auch nur bei dokumentweiten Eventhandlern, also document.onmousemove statt document.body.onmousemove... Dir Frage, die ich mir demnächst auch stellen werde ist, ob man ein Fenster so in ein anderes Browserfenster schieben kann, das zum Beispiel mit window.open geöffnet wurde. Prinzipiell kann dieses Fenster ja mit dem Hauptfenster kommunizieren, wenn es von der gleichen Domain kommt. Mal sehen, ob man so ein Drag and Drop fensterübergreifend hinbekommt... Geändert von MitjaStachowiak (12.05.2014 um 21:47 Uhr) |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Vimeo Problem: Events funktionieren nach geladenem Film nicht mehr | programm | Javascript & Ajax | 1 | 26.09.2013 12:04 |
Upcoming Events (nur anstehende Veranstaltungen anzeigen) | ltob | Serveradministration und serverseitige Scripte | 3 | 06.11.2012 18:39 |
MySQL Events automatisch starten | Todeshügel | Serveradministration und serverseitige Scripte | 1 | 07.11.2010 20:16 |
Revoltec Fighter Mouse Pro CSS Probleme | Pracht | Offtopic | 3 | 24.09.2009 19:33 |
mouse over problem | laco1 | CSS | 10 | 17.01.2009 17:32 |