Подключение событий в onload и определение их типа
У тега <body onload="..."> в onload вызывается такой код:
var obj = document.getElementById('myObjId');
addEvent(obj, 'keypress', function () { eventType(event); });
функции описаны в подключаемом файле:
function addEvent(obj, name, func) {
if (obj.addEventListener) {
obj.addEventListener(name, func, false);
} else if (obj.attachEvent) {
obj.attachEvent('on' + name, func);
} else {
throw 'Error';
}
}
function eventType(e) {
if (!e) {
var e = window.event;
}
alert(e.type);
}
Есть элемент <input id="myObjId" type="text" />
При вводе в инпут вызывается функция eventType(e) (как и должно быть), но тип эвента возвращается load (тоже понятно почему).
Вопрос - есть ли такое решение, чтобы возвращалось именно "нужное" событие, подключаемое в addEvent(obj, 'keypress', function () { return eventType(event); });? Т.е. в данном случае - onkeypress. Интуитивно понятно, что виной всему здесь параметр event в eventType(event).
|