问题
I have a link that, when clicked, I would like it to move the position of the mouse to the right (or anywhere within the viewport, for that matter).
in code it would probably look similar to the following:
$('a#expand').click(function(e){
$(document)
.mouseXPos(e.pageX + 50)
.mouseYPos(e.pageY + 50);
});
Chaining might not be necessary, of course, but a similar 'set mouse position' functionality is what I am after.
I've seen solutions to move the cursor position to a certain spot in the text, but I didn't glean much from them.
回答1:
There is no mechanism for moving the mouse via JavaScript.
回答2:
I may be wrong, but I don't think it's possible to move the mouse pointer from client-side script. Given the potential for abuse, I certainly hope it isn't.
回答3:
There's no way to accomplish mouse position change via JavaScript or any Client-Side Script. The only reason for that is not to give a client side script potential for abuse as stated before.
回答4:
You could hide the cursor, and show another one at a different place.
Good to have when moving around in a maze for example. The cursor looks like it's stopped but you will see it again when you move outside the window.
回答5:
As other users already have mentioned, there isn't any mechanism is Javascript to do that. However, you can disable the mouse and implement a cursor to do what you need. Here is a link that explains how. How to implement a custom cursor.
回答6:
You map change scroll position that will automatically move your pointer to required position;
$(document).scrollTop();
For some case, I was required to stay pointer on same checkbox although a button show/hide was causing a bubbling... so I did something like;
$(document).scrollTop( $(document).scrollTop() + parseInt($('.btn-show-selected-group').outerHeight()) );
$(document).scrollTop( $(document).scrollTop() - parseInt($('.btn-show-selected-group').outerHeight()) );
来源:https://stackoverflow.com/questions/1208729/jquery-set-mouse-position-not-cursor-position