У меня есть <input>
, у которого есть встроенный обработчик событий onkeydown
.В этом обработчике я хотел бы вызвать функцию и передать ей специальный параметр - данные события.
Когда я хочу обработать события (например, onmousemove) для всего документа, я использую следующий код:
document.onmousemove=function(e) {
// here I can make a good use of the 'e' variable,
// for example extract the mouse coordinates from it
}
И это работает (хотя я не знаю, откуда берется переменная e
- данные о событиях).
Но на этот раз я хочу использовать функцию только для <input>
упомянуто выше.
Мне нужно передать данные события в функцию, чтобы она могла получить код нажатой клавиши.И я хочу сделать это в этом встроенном обработчике событий.Я создал функцию:
function myfunc (e) {
var evt=window.event?event:e;
var code=evt.keyCode;
alert (code);
}
и перепробовал все эти методы:
<input onkeydown="myfunc(this)">
<input onkeydown="myfunc(this.onkeydown)">
<input onkeydown="myfunc(onkeydown)">
Но ни одно из них не сработало, окно предупреждения продолжало отображать "undefined".
Я искал решение моей проблемы в Google, но не нашел ничего, что могло бы помочь мне решить ее.*