2016-08-01 26 views
0

Ich möchte die Cursor-Geschwindigkeit in einigen div-Tags ändern, um eine bessere Benutzererfahrung auf meiner Website zu geben. Ich habe bereits das Bild des Cursors geändert, ich möchte den Cursor verlangsamen. Gibt es eine Möglichkeit, das zu tun?Ändern der Cursor-Geschwindigkeit in einem div-Tag

+2

Ich bin sehr skeptisch Unordnung mit der Cursor-Geschwindigkeit könnte die UX verbessern, auch wenn es möglich wäre. –

+0

Sie können etwas hacken, aber es funktioniert nicht genau so, wie Sie wollen - ich meine, Sie können das Cursor-Icon verzögern, aber nicht den ** tatsächlichen ** Cursor (zumindest in dem ich denke - mebe es gibt einen anderen Weg. .) –

+0

Nur um das hier raus zu werfen. Ich war fasziniert von diesem Thema und probierte die Pointer-Lock-API aus, die in den Kommentaren einer anderen Antwort erwähnt wurde und eine einfache Demo mit ihr hier gemacht hat: http://codepen.io/thepio/pen/RRBzrP?editors=1010 (mit jQuery). Leider scheint es (zumindest konnte ich es nicht schaffen), Sie können die Mauszeigersperre nicht mit 'mouseenter' oder' hover' oder etwas Ähnlichem initiieren. Nur ein Klick-Ereignis scheint zu funktionieren. Vielleicht werde ich das mehr untersuchen, wenn ich Zeit habe, aber es ist ein interessantes Konzept. – thepio

Antwort

2

Ich glaube nicht, dass es möglich ist, den Cursor mit Javascript zu steuern. Aber Sie könnten aber verstecken Sie den Cursor mit

cursor: none; 

und dann einige JavaScript tun, um eine sich langsamer bewegenden Cursor mit HTML/CSS gemacht zu emulieren. Aber das wäre viel mehr Arbeit, als es wert ist, und würde wahrscheinlich sowieso nicht gut funktionieren.

+0

Da sich der echte Cursor immer noch normal bewegen würde, würde er den Bereich wahrscheinlich unerwartet verlassen. –

+0

'@Alexander O'Mara' können Sie für die Position des Elements testen, dass Sie sich auf dem Bildschirm bewegen. Sie sollten das Event-Objekt verwenden, um nach 'event.clientX' und' event.clientY' gegen Ihre 'Element.getBoundingClientRect()' oder etwas anderes zu suchen, um zu sehen, wo sich Ihr Cursor befindet. – PHPglue

1

tut dies mit reiner Javascript könnte eine Herausforderung sein, aber man kann versuchen, diese Funktion beinhaltet die Geschwindigkeit des Cursors zu verlangsamen, während CTRL die AutoHotKey script mit zu halten.

Sie müssen AutoHotKey installiert haben, um dies durchzuführen, aber es ist kostenlos und Open-Source.

1

Sie können die Zeigergeschwindigkeit nicht direkt über eine DOM-API steuern, und ich erwarte auch nicht, dass eine solche API aufgrund von Eingabeproblemen und wahrscheinlichem Missbrauch von Click-Jacking verfügbar wird.

Das gesagt, in vielen modernen Browsern gibt es eine API namens Pointer Lock, wo Sie die Kontrolle über Zeigerbewegungen anfordern können. Damit könnten Sie einen langsameren Cursor emulieren, indem Sie die Cursorbewegungen übernehmen und einen falschen Cursor positionieren.