139 votes

Déplacez le pointeur de la souris sur une position spécifique?

Je construis un jeu HTML5 et j'essaie de placer le curseur de la souris sur un contrôle donné sur un événement spécifique, de sorte que le déplacement dans une direction spécifique aboutisse toujours au même résultat. Est-ce possible?

206voto

Martin Jespersen Points 13702

Vous ne pouvez pas déplacer le mousepointer avec javascript.

Pensez juste aux implications pour une seconde, si vous le pouvez;)

  1. L'utilisateur pense: "hé, j'aimerais cliquer sur ce lien"
  2. Javascript déplace le curseur de souris sur un autre lien
  3. L'utilisateur clique sur un mauvais lien et télécharge par inadvertance un logiciel malveillant qui formate son lecteur c et mange ses bonbons

94voto

alex gray Points 5089
  1. Exécutez un petit serveur web sur la machine client. Peut être un petit 100kb chose. Un Python / Perl script, etc.
  2. Inclure une petite pré-compilé C exécutable qui peut déplacer la souris.
  3. Exécuter en tant que script CGI via un simple appel http, AJAX, avec les coordonnées que vous souhaitez déplacer la souris, par exemple:

    http://localhost:9876/cgi/mousemover?x=200&y=450

PS: Pour tout problème, il y a des centaines d'excuses pour expliquer pourquoi, et comment il ne peut pas et ne doit pas être fait.. Mais dans cet univers infini, c'est vraiment juste une question de détermination pour savoir si VOUS allez y arriver.

86voto

Xaxis Points 656

J'imagine que vous pourriez accomplir en plaçant le curseur de la souris dans une zone donnée de l'écran si vous n'utilisez pas le réel (système) curseur de la souris.

Par exemple, vous pouvez créer une image d'agir à la place de votre curseur, gérer un événement qui, lors de la détection d'mouseenter dans votre scène, définir le style sur le système curseur sur 'none' (sceneElement.style.cursor = 'none'), puis afficher une image cachée élément agissant comme un curseur n'importe où vous le souhaitez dans la scène en fonction prédéfinie de l'axe/la boîte englobante de la traduction.

De cette façon, peu importe la façon dont vous avez déplacé le réel curseur de votre méthode de traduction permettraient de garder votre image curseur là où vous en avez besoin.

edit: un exemple dans jsFiddle l'aide d'une représentation de l'image et forcé le mouvement de la souris

65voto

dionyziz Points 1149

Grande question. C'est vraiment quelque chose de manquant dans le Javascript du navigateur de l'API. Je travaille aussi sur un WebGL jeu avec mon équipe, et nous avons besoin de cette fonctionnalité. J'ai ouvert un problème sur Firefox bugzilla, de sorte que nous pouvons commencer à parler de la possibilité d'avoir une API pour permettre le verrouillage de la souris. Cela va être utile pour tous HTML5/WebGL développeurs du jeu.

Si vous le souhaitez, de venir ici et de laisser un commentaire avec vos commentaires, et upvote la question:

https://bugzilla.mozilla.org/show_bug.cgi?id=630979

Merci!

49voto

Amish G Points 31

Vous pouvez détecter la position du pointeur de la souris, puis déplacer la page Web de manière à ce qu'ils survolent ce que vous voulez qu'ils cliquent.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X