jQuery Установить положение мыши (не положение курсора) - PullRequest
33 голосов
/ 30 июля 2009

У меня есть ссылка, при нажатии которой я бы хотел переместить положение мыши вправо (или, в любом случае, в пределах области просмотра).

в коде это будет выглядеть примерно так:

$('a#expand').click(function(e){
    $(document)
       .mouseXPos(e.pageX + 50)
       .mouseYPos(e.pageY + 50);
});

Конечно, цепочка может и не понадобиться, но мне нужна похожая функциональность «установить положение мыши».

Я видел решения для перемещения курсора в определенную точку в тексте, но я мало что получил от них.

Ответы [ 6 ]

55 голосов
/ 30 июля 2009

Нет механизма для перемещения мыши через JavaScript.

9 голосов
/ 30 июля 2009

Я могу ошибаться, но я не думаю, что можно переместить указатель мыши из сценария на стороне клиента. Учитывая вероятность злоупотреблений, я, безусловно, надеюсь, что это не так.

4 голосов
/ 08 февраля 2011

Вы можете скрыть курсор и показать другой в другом месте.

Хорошо иметь при движении, например, в лабиринте. Курсор выглядит так, как будто он остановлен, но вы увидите его снова, когда выйдете за пределы окна.

4 голосов
/ 12 августа 2009

Нет способа выполнить изменение положения мыши с помощью JavaScript или любого клиентского скрипта. Единственная причина этого заключается не в том, чтобы предоставить клиентскому скрипту возможность злоупотребления, как указано выше.

2 голосов
/ 07 сентября 2012

Как уже упоминали другие пользователи, в Javascript нет механизма для этого. Тем не менее, вы можете отключить мышь и реализовать курсор, чтобы делать то, что вам нужно. Вот ссылка, которая объясняет, как. Как реализовать пользовательский курсор .

0 голосов
/ 07 мая 2018

Вы измените положение прокрутки карты, которая автоматически переместит ваш указатель в требуемое положение;

$(document).scrollTop();

В некоторых случаях мне нужно было оставить указатель на том же флажке, хотя кнопка «показать / скрыть» вызывала пузырение ... поэтому я сделал что-то вроде;

$(document).scrollTop( $(document).scrollTop() + parseInt($('.btn-show-selected-group').outerHeight()) );
$(document).scrollTop( $(document).scrollTop() - parseInt($('.btn-show-selected-group').outerHeight()) );
...