Как передать параметры в функцию при вызове на событие?
Вот такой вопрос: когда функция привязана на событие, как я понял в неё при вызове передаётся тока 1 параметр - объект Event (в ИЕ window.event) ну не важно.. вобщем, если нужно чтобы она вызывалась с другими параметрами, как их туда передать? Чтобы не пришлось юзать внешние для этой функции переменные
|
var data = { // То, что нада передать } ele.addEventListener(type, function(evt){ handler(evt, data); }, false); Пример приведён для Not IE. Более подробно почитай про замыкания. |
ок, разобрался) Терь возникает другой вопрос: каким образом можно узнать, привязан ли данный обработчик к объекту или нет? Знаю что eventListenerList не поддерживается. Какие-то обходные варианты есть?
|
Цитата:
|
Цитата:
|
напиши свою обертку для навешивания событий
внутри сперва запомни в специальный массив ссылку на ф-цию(ну или еще можно на DOM-элемент, собятие и прочая, если надо) а затем повесь стандартным образом обработчик события затем если надо выяснить, проходишься по массиву в поисках нужной тебе ф-ции, и если нашел, то заодно можно узнать сопутствующую инфу желательно поместить обе ф-ции и объект внутри замыкания, и вывести ссылки на ф-ции наружу, чтобы не засорять глобальную область видимости |
За основу можешь взять этот код: Кросс-браузерное добавление и обработка событий
|
Часовой пояс GMT +3, время: 13:50. |