2010-02-23 14 views
15

È possibile spostare il mouse in modo che sia posizionato all'interno di un input di testo utilizzando JavaScript?Sposta il puntatore del mouse in JavaScript

+2

È non è possibile spostare il puntatore del mouse in Javascript. – SLaks

+9

È possibile, tuttavia, spostare un'immagine a forma di puntatore e fingere che sia possibile. :-) –

+22

Ancora meglio, puoi spostare l'immagine di un gatto in giro, seguendo il cursore del mouse, e provare ad usarlo per inseguire il cursore nella posizione desiderata. – jball

risposta

20

Non so come spostare il mouse effettivamente renderizzato, ma potresti semplicemente mettere a fuoco l'elemento?

document.getElementById('the_text_input_id').focus() 
+8

impossibile spostare il mouse, confermato. – dusoft

5

Si prega di vedere questa domanda:

Mouse move on element

Oltre a questo, penso che si sta commettendo grave errore di progettazione prendendo il controllo di una delle contributo degli utenti in ogni caso (forse oltre impostazione dello stato attivo di un elemento del modulo)

6

Ecco una funzione che seleziona il testo in un input o in una textarea:

function textSelect(inp, s, e) { 
     e = e || s; 
     if (inp.createTextRange) { 
      var r = inp.createTextRange(); 
      r.collapse(true); 
      r.moveEnd('character', e); 
      r.moveStart('character', s); 
      r.select(); 
     }else if(inp.setSelectionRange) { 
      inp.focus(); 
      inp.setSelectionRange(s, e); 
     } 
    } 

Per posizionare il cursore in corrispondenza della posizione 12 °:

textSelect(document.getElementById('theInput'), 12); 

Per selezionare una parte del campo di input:

textSelect(document.getElementById('theInput'), 12, 15); 
0

sarebbe un enorme [di sicurezza?] Problema se hanno permesso qualcosa di simile. Immaginate: avete un setInterval (function() {moveMouseToTopLeftCorner e alert garbage}, 1) ...
L'utente dovrebbe spostare il mouse in alto a sinistra. E poi si mostrerebbe l'avviso [che potrebbe essere chiuso con invio] .. su cui un avviso comparirà immediatamente.

Sareste davvero necessario utilizzare la tastiera per aprire taskmanager e uccidere il browser> _>

Tuttavia, è probabilmente possibile con ActiveX [anche se questo è solo IE ... e muto]

Problemi correlati