Книга: JavaScript. Подробное руководство, 6-е издание
17.2.4. attachEvent()
17.2.4. attachEvent()
Internet Explorer версии ниже IE9 не поддерживает методы addEventListener()
и removeEventListener().
В версии IE5 и выше определены похожие методы, attachEvent()
и detachEvent().
По своему действию методы attachEvent()
и detachEvent()
похожи на методы addEventListener()
и removeEventListener()
со следующими исключениями:
• Поскольку модель событий в IE не поддерживает фазу перехвата, методы attachEvent()
и detachEvent()
принимают только два аргумента: тип события и функцию обработчика.
• В первом аргументе методам в IE передается имя свойства обработчика с префиксом «on», а не тип события без этого префикса. Например, методу attachEvent()
должно передаваться имя «опсііск», тогда как методу addEventListener()
должно передаваться имя «click».
• Метод attachEvent()
позволяет зарегистрировать одну и ту же функцию обработчика несколько раз. При возникновении события указанного типа зарегистрированная функция будет вызвана столько раз, сколько раз она была зарегистрирована.
Ниже показано, как обычно выполняется регистрация обработчика с помощью метода addEventListener()
в броузерах, поддерживающих его, и с помощью метода attachEvent()
в других броузерах:
var b = document.getElementByldC'mybutton");
var handler = function() { alert("Спасибо!"); };
if (b.addEventListener)
b.addEventListener("click", handler, false);
else if (b.attachEvent)
b.attachEvent("onclick", handler);
- Подключение обработчиков прерываний
- Обработчик прерывания
- 13.4.1. Библиотеки обеспечения совместимости
- 13.4.3. Проверка особенностей
- 17.2. Регистрация обработчиков событий
- 17.3.1. Аргумент обработчика событий
- 17.3.2. Контекст обработчиков событий
- 17.3.5. Порядок вызова
- Резюме
- 17.4. События загрузки документа