2009-12-08 2 views
0

Использование Mootools, но общий ответ в порядке.Fire keydown в Javascript

Я хотел бы переназначить ключ «Ввод» в веб-приложении.
Когда они нажимают «Enter», он должен реагировать так, как будто был нажат «Shift-Enter».

Я бы просто остановил событие ввода и использовал exec.insertHTML или его ilk, но реализация FF неэффективна для многих элементов.

Я полагаю, что я мог бы уволить ключевое событие, так же, как я мог стрелять щелчок или другое событие:

нажмите: $('myElement').fireEvent('click', arg1);

KeyEvent: $('myElement').fireEvent('keydown' ???);

Но я не могу понять, каким образом.

+0

пробовал onkeydown или какое-то подобное основное имя события javascript как тип события? – yoda

ответ

0

Я не знаю точно, что вы ищете, но следующее вызывает событие «shiftenter» при нажатии клавиши ввода. Обратите внимание, что вы должны сами определить событие «shiftenter».

$('element').addEvent('keydown', function(e) { 
    new Event(e).stop(); 

    if (e.key == 'enter') { 
     this.fireEvent('shiftenter'); 
    } 
}); 
+0

Спасибо. Но я знаю, как заставить его запускать собственное пользовательское событие. Я хотел, чтобы он реагировал так, как будто были нажаты клавиши shift + enter на клавиатуре. – SamGoody