benutzerdefinierter Cursor außerhalb des Browserfensters

8

Ich habe ein Element auf meiner Website, das frei skalierbar ist. Dies geschieht durch 4 Griffe an den Kanten. Wenn ich diese Griffe schwenke und die Größe des Elements verändere, zeige ich die entsprechenden Größenänderungspfeile an.

Zur Zeit habe ich dieses Verhalten implementiert, indem ich den css-Cursor-Stil von body / root auf diese Pfeile gesetzt habe. Das Problem ist das Limit für den Clientbereich des Browserfensters. Es wäre visuell konsistenter und weniger verwirrend, wenn der Pfeilcursor überall sichtbar wäre, während die Maus gedrückt gehalten wird.

Google Maps macht beim Verschieben der Karte dasselbe mit dem Handcursor. Also meine Frage ist, wie ich diesen Effekt selbst erreichen kann.

Meine aktuelle (relevante) Quelle:

%Vor%     
V02460 01.11.2010, 23:13
quelle

2 Antworten

4

Zu diesem Zweck ist in den moderneren Browsern eine spezielle Funktion implementiert. Der Name lautet setCapture () . Es leitet alle Mauseingaben an das Objekt um, an dem die Methode aufgerufen wurde. Jetzt reicht eine einfache css cursor -Definition für dieses Element aus, um den gewünschten Effekt zu archivieren. Nach dem Loslassen der Maus stoppt dieser Effekt (aus Sicherheitsgründen). Es kann auch manuell gestoppt werden, indem releaseCapture

aufgerufen wird

Beispiel:

%Vor%

[...]

%Vor%     
V02460 04.01.2011, 22:42
quelle
-1
  

wenn der Pfeilcursor überall sichtbar wäre, während die Maus gedrückt gehalten wird.

Sie verlassen sich auf eine mögliche OS-Eigenart, um Ihr Verhalten zu erzeugen. Das ist nichts, was Sie ÜBERNEHMEN können, wird immer wahr sein. Sobald Sie jedoch einen Mausklick starten, bleibt der Cursor an dieser Stelle normalerweise gleich, egal wohin Sie die Maus bewegen, bis zu etwas anderem (ein anderes Fenster, über das Sie die Maus bewegen können? Der Desktop? Ein System-Interrupt?) der Cursor.

Mit anderen Worten, verlassen Sie sich nicht auf dieses Verhalten. Finden Sie etwas anderes, das für Sie arbeiten wird. Wenn Sie dies tun müssen, überprüfen Sie Ihre Geschäftsanforderungen.

    
jcolebrand 03.11.2010 16:30
quelle

Tags und Links