У меня есть <input>
, у которого есть обработчик события onkeydown
inline. В этом обработчике я хотел бы вызвать функцию и передать ему специальный параметр - данные события.
Когда я хочу обрабатывать события (например, 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>
, упомянутого выше.
Мне нужно передать данные события в функцию, чтобы он мог получить нажатый key code. И я хочу сделать это в этом встроенном обработчике событий. Я создал функцию:
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, но не нашел ничего, что могло бы помочь мне решить проблему.