2010-02-23 7 views
15

Можно ли перемещать мышь так, чтобы она располагалась внутри текстового ввода с использованием JavaScript?Переместить указатель мыши в JavaScript

+2

Вы не может перемещать фактический указатель мыши в Javascript. – SLaks

+9

Вы можете, однако, перемещать изображение в форме указателя и притворяться, что можете. :-) –

+22

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

ответ

20

Я не знаю, как перемещать фактическую визуализированную мышь, но вы могли бы просто установить фокус на элемент?

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

невозможно переместить мышь, подтвержденный. – dusoft

5

Пожалуйста, смотрите на этот вопрос:

Mouse move on element

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

6

Вот функция, которая выбирает текст во входном или текстовом поле:

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); 
     } 
    } 

Чтобы поместить курсор на 12-й позиции:

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

Для того чтобы выбрать часть поля ввода:

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

Было бы огромным [безопасность?] Вопрос если они допускали что-то вроде этого. Представьте себе: у вас есть setInterval (function() {moveMouseToTopLeftCorner и alert garbage}, 1) ...
Пользователь должен был поместить его мышь в левую верхнюю часть. И тогда появится предупреждение (которое может быть закрыто с enter), после чего предупреждение снова появится снова.

Вы бы на самом деле нужно использовать клавиатуру, чтобы открыть TaskManager и убить браузер> _>

Однако, это, вероятно, возможно с ActiveX [хотя то будет IE только ... и немой]

Смежные вопросы