JavaScript. Подробное руководство, 6-е издание, стр. 254
Следующий фрагмент регистрирует два обработчика события «click» в элементе
<b><button></b><b><button id="mybutton''>Щелкни на Mнe</button></b><b><script></b><b> var b = document.getElementById("mybutton");</b><b> b.onclick = function() { </b><b> alert("Спасибо, что щелкнули на мне!"); </b><b> };</b><b> b.addEventListener("click", function() { alert(Еще раз спасибо!"); }, false);</b><b></script></b>Вызов метода
<b>addEventListener()</b><b>onclick</b><b>alert().</b><b>addEventListener()</b><b>addEventListener()</b>Парным к методу
<b>addEventListener()</b><b>removeEventListener(),</b><b>document.removeEventListener("mousemove", handleMouseMove, true);</b><b>document.removeEventListener("mouseup", handleMouseUp, true);</b>17.2.4. attachEvent()
Internet Explorer версии ниже IE9 не поддерживает методы
<b>addEventListener()</b><b>removeEventListener().</b><b>attachEvent()</b><b>detachEvent().</b>По своему действию методы
<b>attachEvent()</b><b>detachEvent()</b><b>addEventListener()</b><b>removeEventListener()</b>• Поскольку модель событий в IE не поддерживает фазу перехвата, методы
<b>attachEvent()</b><b>detachEvent()</b>• В первом аргументе методам в IE передается имя свойства обработчика с префиксом «on», а не тип события без этого префикса. Например, методу
<b>attachEvent()</b><b>addEventListener()</b>• Метод
<b>attachEvent()</b>Ниже показано, как обычно выполняется регистрация обработчика с помощью метода
<b>addEventListener() </b><b>attachEvent()</b><b>var b = document.getElementByldC'mybutton"); </b><b>var handler = function() { alert("Спасибо!"); }; </b><b>if (b.addEventListener)</b><b> b.addEventListener("click", handler, false); </b><b>else if (b.attachEvent)</b><b> b.attachEvent("onclick", handler);</b>17.3. Вызов обработчиков событий
После регистрации обработчика событий веб-броузер будет вызывать его автоматически, когда в указанном объекте будет возникать событие указанного типа. В этом разделе подробно описывается порядок вызова обработчиков событий, аргументы обработчиков, контекст вызова (значение
<b>this</b>Кроме того, с целью описать, как вызываются отдельные обработчики событий, в этом разделе также разъясняется, как происходит распространение событий: как единственное событие может привести к вызову нескольких обработчиков в оригинальном целевом объекте и в содержащих его элементах документа.
17.3.1. Аргумент обработчика событий
При вызове обработчика событий ему обычно (за одним исключением, о котором рассказывается ниже) передается объект события в виде единственного аргумента. Свойства объекта события содержат дополнительную информацию о событии. Свойство
<b>type</b>В IE версии 8 и ниже обработчикам событий, зарегистрированным установкой свойства, объект события при вызове не передается. Вместо этого объект события сохраняется в глобальной переменной
<b>window.event</b><b>window.event</b>