<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FEvent%2FGeneral_Event</id>
		<title>JavaScript DHTML/Event/General Event - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FEvent%2FGeneral_Event"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Event/General_Event&amp;action=history"/>
		<updated>2026-04-05T16:27:00Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Event/General_Event&amp;diff=2116&amp;oldid=prev</id>
		<title> в 10:00, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Event/General_Event&amp;diff=2116&amp;oldid=prev"/>
				<updated>2010-05-26T10:00:30Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 10:00, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Event/General_Event&amp;diff=2117&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Event/General_Event&amp;diff=2117&amp;oldid=prev"/>
				<updated>2010-05-26T07:20:41Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Add event handler to form==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;title&amp;gt;W3C DOM Event Propagation&amp;lt;/title&amp;gt; &lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function init() { &lt;br /&gt;
    document.forms[0].addEventListener(&amp;quot;click&amp;quot;, formBubbleEvent, false); &lt;br /&gt;
} &lt;br /&gt;
function formBubbleEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;FORM only on BUBBLE.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function getPhase(evt) { &lt;br /&gt;
    switch (evt.eventPhase) { &lt;br /&gt;
        case 1: &lt;br /&gt;
        return &amp;quot;CAPTURING&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        case 2: &lt;br /&gt;
        return &amp;quot;AT TARGET&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        case 3: &lt;br /&gt;
        return &amp;quot;BUBBLING&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        default: &lt;br /&gt;
        return &amp;quot;&amp;quot;; &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body onload=&amp;quot;init()&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;form&amp;gt; &lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Button &amp;quot;main1&amp;quot;&amp;quot; name=&amp;quot;main1&amp;quot; onclick=&amp;quot;alert(&amp;quot;button (&amp;quot; + getPhase(event) + &amp;quot;).&amp;quot;)&amp;quot; /&amp;gt; &lt;br /&gt;
&amp;lt;/form&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==addEventListener or attachEvent==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Options&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function openwin(e) {&lt;br /&gt;
    if (typeof window.open != &amp;quot;undefined&amp;quot;) {&lt;br /&gt;
        var opened = window.open(&amp;quot;http://www.google.ru&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;width=240,height=480&amp;quot;);&lt;br /&gt;
        if (typeof e.preventDefault != &amp;quot;undefined&amp;quot;) {&lt;br /&gt;
            e.preventDefault();&lt;br /&gt;
            e.stopPropagation();&lt;br /&gt;
        }&lt;br /&gt;
        e.cancelBubble = true;&lt;br /&gt;
        return false;&lt;br /&gt;
    } else {&lt;br /&gt;
        return true;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;#&amp;quot; id=&amp;quot;my&amp;quot;&amp;gt;Go?&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;script type = &amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
var mslink = document.getElementById(&amp;quot;my&amp;quot;);&lt;br /&gt;
if (window.addEventListener) {&lt;br /&gt;
    mslink.addEventListener(&amp;quot;click&amp;quot;,openwin,false);&lt;br /&gt;
} else {&lt;br /&gt;
    mslink.attachEvent(&amp;quot;onclick&amp;quot;,openwin);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Add event listener to anchor link==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Onclick&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function handleclick() {&lt;br /&gt;
    document.write(&amp;quot;Clicked&amp;quot;);&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;a id=&amp;quot;link1&amp;quot; href=&amp;quot;#&amp;quot;&amp;gt;Click Here&amp;lt;/a&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;script type = &amp;quot;text/javascript&amp;quot; &amp;gt;&lt;br /&gt;
var link1 = document.getElementById(&amp;quot;link1&amp;quot;);&lt;br /&gt;
if (typeof window.addEventListener != &amp;quot;undefined&amp;quot;) {&lt;br /&gt;
    link1.addEventListener(&amp;quot;click&amp;quot;,handleclick,false);&lt;br /&gt;
} else {&lt;br /&gt;
    link1.attachEvent(&amp;quot;onclick&amp;quot;,handleclick);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==An Example of Changing Event Handlers==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot;&amp;gt;     var choice = &amp;quot;A&amp;quot;&lt;br /&gt;
     function optionA() {&lt;br /&gt;
      alert(&amp;quot;optionA&amp;quot; );  &lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     function optionB() {&lt;br /&gt;
        alert(&amp;quot;optionB&amp;quot; );  &lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;form name=&amp;quot;form1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; name=&amp;quot;button1&amp;quot;  onClick=&amp;quot;optionA()&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;   &lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot;&amp;gt;&lt;br /&gt;
     if (choice != &amp;quot;A&amp;quot;) {&lt;br /&gt;
          document.form1.button1.onclick=optionB&lt;br /&gt;
     }&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Bubble up events (Firefox)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function writeX(evnt) {&lt;br /&gt;
   document.write(&amp;quot;Capturing&amp;quot; + evnt.target + &amp;quot; &amp;quot; + evnt.currentTarget);&lt;br /&gt;
   return true;&lt;br /&gt;
}&lt;br /&gt;
function setup(evnt) {&lt;br /&gt;
   document.addEventListener(&amp;quot;click&amp;quot;,writeX,false);&lt;br /&gt;
   document.forms[0].addEventListener(&amp;quot;click&amp;quot;,writeX,false);&lt;br /&gt;
   document.forms[0].elements[0].addEventListener(&amp;quot;click&amp;quot;,writeX,false);&lt;br /&gt;
}&lt;br /&gt;
setup();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;form&amp;gt;&lt;br /&gt;
     &amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot; /&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Calling a Function from an Event Handler==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function showMsg(msg) { &lt;br /&gt;
    document.write(&amp;quot;The button sent: &amp;quot; + msg); &lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body&amp;gt; &lt;br /&gt;
&amp;lt;form&amp;gt; &lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Click Me&amp;quot; &lt;br /&gt;
onclick=&amp;quot;showMsg(&amp;quot;The button has been clicked!&amp;quot;)&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;/form&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Capturing events==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function writeX(evnt) {&lt;br /&gt;
   document.write(&amp;quot;Capturing&amp;quot; + evnt.target + &amp;quot; &amp;quot; + evnt.currentTarget);&lt;br /&gt;
   return true;&lt;br /&gt;
}&lt;br /&gt;
function setup(evnt) {&lt;br /&gt;
   document.addEventListener(&amp;quot;click&amp;quot;,writeX,true);&lt;br /&gt;
   document.forms[0].addEventListener(&amp;quot;click&amp;quot;,writeX,true);&lt;br /&gt;
   document.forms[0].elements[0].addEventListener(&amp;quot;click&amp;quot;,writeX,true);&lt;br /&gt;
}&lt;br /&gt;
setup();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;form&amp;gt;&lt;br /&gt;
     &amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot; /&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Emulating Events==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
&amp;lt;HEAD&amp;gt;&lt;br /&gt;
&amp;lt;TITLE&amp;gt;Simulating Events&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
&amp;lt;SCRIPT&amp;gt;&amp;lt;!--&lt;br /&gt;
function button1Clicked() {&lt;br /&gt;
 document.test.button2.click()&lt;br /&gt;
}&lt;br /&gt;
function button2Clicked() {&lt;br /&gt;
 alert(&amp;quot;Button 2 was clicked!&amp;quot;)&lt;br /&gt;
}&lt;br /&gt;
//--&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&lt;br /&gt;
&amp;lt;BODY&amp;gt;&lt;br /&gt;
&amp;lt;FORM NAME=&amp;quot;test&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;INPUT TYPE=&amp;quot;BUTTON&amp;quot; NAME=&amp;quot;button1&amp;quot; VALUE=&amp;quot;Button 1&amp;quot;&lt;br /&gt;
 ONCLICK=&amp;quot;button1Clicked()&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;INPUT TYPE=&amp;quot;BUTTON&amp;quot; NAME=&amp;quot;button2&amp;quot; VALUE=&amp;quot;Button 2&amp;quot;&lt;br /&gt;
 ONCLICK=&amp;quot;button2Clicked()&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/FORM&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Event Bubbling Demonstration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html onclick=&amp;quot;alert(&amp;quot;Event is now at the HTML element.&amp;quot;)&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;title&amp;gt;Event Bubbles&amp;lt;/title&amp;gt; &lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function init() { &lt;br /&gt;
    window.onclick = winEvent &lt;br /&gt;
    document.onclick = docEvent; &lt;br /&gt;
    document.body.onclick = docBodEvent; &lt;br /&gt;
} &lt;br /&gt;
function winEvent() { &lt;br /&gt;
    alert(&amp;quot;window object level.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function docEvent() { &lt;br /&gt;
    alert(&amp;quot;document object level.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function docBodEvent() { &lt;br /&gt;
    alert(&amp;quot;BODY element.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body onload=&amp;quot;init()&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;form onclick=&amp;quot;alert(&amp;quot;FORM&amp;quot;)&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Button &amp;quot;main1&amp;quot;&amp;quot; name=&amp;quot;main1&amp;quot; onclick=&amp;quot;alert(&amp;quot;Button: &amp;quot; + this.name)&amp;quot; /&amp;gt; &lt;br /&gt;
&amp;lt;/form&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Event Bubbling (Firefox)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Event Bubbling&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function mouseDown(nsEvent) {&lt;br /&gt;
  var theEvent = nsEvent ? nsEvent : window.event;&lt;br /&gt;
  var locString = &amp;quot;X = &amp;quot; + theEvent.screenX + &amp;quot; Y = &amp;quot; + theEvent.screenY;&lt;br /&gt;
  var theSrc = theEvent.target ? theEvent.target : theEvent.srcElement;&lt;br /&gt;
  document.write(locString + &amp;quot; &amp;quot; + theSrc);&lt;br /&gt;
}&lt;br /&gt;
document.onmousedown=function (evnt) {&lt;br /&gt;
   var theEvnt = evnt? evnt : window.event;&lt;br /&gt;
   document.write(theEvnt.type);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
window.onload=function () {&lt;br /&gt;
   document.getElementById(&amp;quot;first&amp;quot;).onmousedown=mouseDown;&lt;br /&gt;
   document.getElementById(&amp;quot;second&amp;quot;).onmousedown=function () {&lt;br /&gt;
      document.write(&amp;quot;Second event handler&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;first&amp;quot; style=&amp;quot;padding: 20px; background-color: #ffff0; width: 150px&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;second&amp;quot; style=&amp;quot;background-color: #ff0000; width: 100px; height: 100px&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Event filer: number Only, upper case==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
     Example File From &amp;quot;JavaScript and DHTML Cookbook&amp;quot;&lt;br /&gt;
     Published by O&amp;quot;Reilly &amp;amp; Associates&lt;br /&gt;
     Copyright 2003 Danny Goodman&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
function numberOnly(evt) {&lt;br /&gt;
    evt = (evt) ? evt : ((window.event) ? event : null);&lt;br /&gt;
    if (evt) {&lt;br /&gt;
       var elem = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);&lt;br /&gt;
       if (elem) {&lt;br /&gt;
           var charCode = (evt.charCode) ? evt.charCode : &lt;br /&gt;
               ((evt.which) ? evt.which : evt.keyCode);&lt;br /&gt;
           if ((charCode &amp;lt; 32 ) || &lt;br /&gt;
               (charCode &amp;gt; 44 &amp;amp;&amp;amp; charCode &amp;lt; 47) || &lt;br /&gt;
               (charCode &amp;gt; 47 &amp;amp;&amp;amp; charCode &amp;lt; 58)) {&lt;br /&gt;
               return true;&lt;br /&gt;
           } else {&lt;br /&gt;
               return false;&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
----------&lt;br /&gt;
function upperOnly() {&lt;br /&gt;
    var charCode = event.keyCode;&lt;br /&gt;
    if (charCode &amp;gt; 96 &amp;amp;&amp;amp; charCode &amp;lt; 123) {&lt;br /&gt;
        event.keyCode = charCode - 32;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Event Handlers and this==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
window.onload=setObjects;&lt;br /&gt;
function setObjects() {&lt;br /&gt;
   document.personData.firstName.onblur=testValue;&lt;br /&gt;
}&lt;br /&gt;
function testValue() {&lt;br /&gt;
   document.write(this.value);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;form name=&amp;quot;personData&amp;quot;&amp;gt;&lt;br /&gt;
First Name: &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;firstName&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Event type occured==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function whichType(event){&lt;br /&gt;
    alert(event.type)&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body onmousedown=&amp;quot;whichType(event)&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Click on the document. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get Positioned Event Coordinate==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
     Example File From &amp;quot;JavaScript and DHTML Cookbook&amp;quot;&lt;br /&gt;
     Published by O&amp;quot;Reilly &amp;amp; Associates&lt;br /&gt;
     Copyright 2003 Danny Goodman&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
function getPositionedEventCoords(evt) {&lt;br /&gt;
    var elem = (evt.target) ? evt.target : evt.srcElement;&lt;br /&gt;
    var coords = {left:0, top:0};&lt;br /&gt;
    if (evt.layerX) {&lt;br /&gt;
        var borders = {left:parseInt(getElementStyle(&amp;quot;progressBar&amp;quot;, &lt;br /&gt;
                       &amp;quot;borderLeftWidth&amp;quot;, &amp;quot;border-left-width&amp;quot;)),&lt;br /&gt;
                       top:parseInt(getElementStyle(&amp;quot;progressBar&amp;quot;, &lt;br /&gt;
                       &amp;quot;borderTopWidth&amp;quot;, &amp;quot;border-top-width&amp;quot;))};&lt;br /&gt;
        coords.left = evt.layerX - borders.left;&lt;br /&gt;
        coords.top = evt.layerY - borders.top;&lt;br /&gt;
    } else if (evt.offsetX) {&lt;br /&gt;
        coords.left = evt.offsetX;&lt;br /&gt;
        coords.top = evt.offsetY;&lt;br /&gt;
    }&lt;br /&gt;
    evt.cancelBubble = true;&lt;br /&gt;
    return coords;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Inline DOM Event Registration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Inline DOM Event Registration&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
function helloMsg() {&lt;br /&gt;
    var helloString = &amp;quot;hello there&amp;quot;;&lt;br /&gt;
    document.write(helloString);&lt;br /&gt;
}&lt;br /&gt;
function helloTwice() {&lt;br /&gt;
    var helloString = &amp;quot;hi again&amp;quot;;&lt;br /&gt;
    document.write(helloString);&lt;br /&gt;
}&lt;br /&gt;
window.onload=helloTwice;&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body onload=&amp;quot;helloMsg();&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==JavaScript Event Handlers==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
     var noticeWindow&lt;br /&gt;
   &lt;br /&gt;
     //onClick event handler&lt;br /&gt;
     function displayHat() {&lt;br /&gt;
        hatWindow = window.open(&amp;quot;http://www.wbex.ru&amp;quot;,&amp;quot;ViewHat&amp;quot; ,&amp;quot;toolbar=0,width=200,height=400,resizable=0&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     //onSubmit event handler&lt;br /&gt;
     function confirmOrder() {&lt;br /&gt;
       return confirm(&amp;quot;on submit&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     //onChange event handler&lt;br /&gt;
     function convertToUppercase(fieldObject) {&lt;br /&gt;
        fieldObject.value = fieldObject.value.toUpperCase();&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     // onFocus event handler&lt;br /&gt;
     function selectContents(fieldObject) {&lt;br /&gt;
        fieldObject.select();&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     // onMouseOver event handler     &lt;br /&gt;
     function updateStatusBar() {&lt;br /&gt;
       window.status = &amp;quot;mouse over&amp;quot;;&lt;br /&gt;
       return true&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     // onMouseOut event handler&lt;br /&gt;
     function updateStatusBarOut() {&lt;br /&gt;
       window.status = &amp;quot;&amp;quot;;&lt;br /&gt;
       return true&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
     // onSelect event handler&lt;br /&gt;
     function accessText() {&lt;br /&gt;
        alert(&amp;quot;Success&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
   &lt;br /&gt;
// --&amp;gt;&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;http://www.wbex.ru&amp;quot; &lt;br /&gt;
   name=&amp;quot;linker&amp;quot; &lt;br /&gt;
   onMouseOver=&amp;quot;return updateStatusBar()&amp;quot; &lt;br /&gt;
   onMouseOut=&amp;quot;return updateStatusBarOut()&amp;quot;&amp;gt;www.wbex.ru&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;form method=&amp;quot;POST&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;input type=button name=&amp;quot;ViewHat&amp;quot; value=&amp;quot;View Hat&amp;quot; onClick=displayHat()&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&amp;lt;form action=&amp;quot;JavaScript:alert(&amp;quot;order&amp;quot;)&amp;quot;&lt;br /&gt;
     method=&amp;quot;POST&amp;quot;&lt;br /&gt;
     name=&amp;quot;MainForm&amp;quot;&lt;br /&gt;
     onSubmit=&amp;quot;return confirmOrder()&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Customer Information&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;    First Name: &lt;br /&gt;
    &amp;lt;input type=text size=20 maxlength=20 name=&amp;quot;FirstName&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;     &lt;br /&gt;
    Last Name: &lt;br /&gt;
    &amp;lt;input type=text size=20 maxlength=20 name=&amp;quot;LastName&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
    Title: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=30 name=&amp;quot;Title&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
    Company: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=30 name=&amp;quot;Company&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt; &lt;br /&gt;
    Street Address: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=30 name=&amp;quot;StreetAddr&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
    City: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=30 name=&amp;quot;City&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;State: &lt;br /&gt;
    &amp;lt;input type=text size=3 maxlength=2 name=&amp;quot;State&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot; onChange=&amp;quot;convertToUppercase(this)&amp;quot;&amp;gt;&lt;br /&gt;
    Zip Code: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=10 name=&amp;quot;ZipCode&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;     &lt;br /&gt;
    Telephone: &lt;br /&gt;
    &amp;lt;input type=text size=12 maxlength=12 name=&amp;quot;Phone&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
    FAX: &lt;br /&gt;
    &amp;lt;input type=text size=12 maxlength=12 name=&amp;quot;FAX&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt; &lt;br /&gt;
    Email: &lt;br /&gt;
    &amp;lt;input size=30 maxlength=50 name=&amp;quot;Email&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
    URL: &lt;br /&gt;
    &amp;lt;input type=text size=30 maxlength=100 name=&amp;quot;URL&amp;quot; onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;textarea name=&amp;quot;worthyBox&amp;quot; rows=3 cols=49 onFocus=&amp;quot;selectContents(this)&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/textarea&amp;gt;&amp;lt;/blockquote&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;input type=submit value=&amp;quot;Order&amp;quot; onClick=&amp;quot;confirmOrder(&amp;quot;Submit object&amp;quot;)&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;input type=reset value=&amp;quot;Clear Form&amp;quot; onClick=&amp;quot;alert(&amp;quot;Clearing!&amp;quot;)&amp;quot;&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;a href=&amp;quot;JavaScript:displayHat()&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;http://www.wbex.ru/style/logo.png&amp;quot; align=bottom border=0 width=50 height=50&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preventing Bubble and Capture==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;title&amp;gt;W3C DOM Event Propagation&amp;lt;/title&amp;gt; &lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function init() { &lt;br /&gt;
    document.body.onclick = docBodEvent; &lt;br /&gt;
    document.addEventListener(&amp;quot;click&amp;quot;, docEvent, true); &lt;br /&gt;
    document.forms[0].addEventListener(&amp;quot;click&amp;quot;, formCaptureEvent, true); &lt;br /&gt;
    document.forms[0].addEventListener(&amp;quot;click&amp;quot;, formBubbleEvent, false); &lt;br /&gt;
} &lt;br /&gt;
function docBodEvent(evt) { &lt;br /&gt;
    if (evt.target.type == &amp;quot;button&amp;quot;) { &lt;br /&gt;
       alert(&amp;quot;BODY&amp;quot;); &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
function formCaptureEvent(evt) { &lt;br /&gt;
    if (evt.target.type == &amp;quot;button&amp;quot;) { &lt;br /&gt;
        alert(&amp;quot;This alert triggered by FORM only on CAPTURE.&amp;quot;); &lt;br /&gt;
        if (document.forms[0].stopAllProp.checked) { &lt;br /&gt;
            evt.stopPropagation(); &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
function formBubbleEvent(evt) { &lt;br /&gt;
    if (evt.target.type == &amp;quot;button&amp;quot;) { &lt;br /&gt;
        alert(&amp;quot;This alert triggered by FORM only on BUBBLE.&amp;quot;); &lt;br /&gt;
        if (document.forms[0].stopDuringBubble.checked) { &lt;br /&gt;
            evt.preventBubble(); &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body onload=&amp;quot;init()&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;form&amp;gt; &lt;br /&gt;
&amp;lt;input type=&amp;quot;checkbox&amp;quot; name=&amp;quot;stopAllProp&amp;quot; /&amp;gt;Stop all propagation at FORM&lt;br /&gt;
&amp;lt;input type=&amp;quot;checkbox&amp;quot; name=&amp;quot;stopDuringBubble&amp;quot; /&amp;gt;Prevent bubbling past FORM &lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Button &amp;quot;main1&amp;quot;&amp;quot; name=&amp;quot;main1&amp;quot; onclick=&amp;quot;alert(&amp;quot;button&amp;quot;)&amp;quot; /&amp;gt; &lt;br /&gt;
&amp;lt;/form&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setting Event Handlers from within JavaScript==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
&amp;lt;HEAD&amp;gt;&lt;br /&gt;
&amp;lt;TITLE&amp;gt;Setting event handlers from within JavaScript&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
&amp;lt;SCRIPT LANGUAGE=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
function handler1() {&lt;br /&gt;
 document.test.result.value=&amp;quot;Set by handler1&amp;quot;&lt;br /&gt;
 document.test.clickMe.onclick=handler2&lt;br /&gt;
}&lt;br /&gt;
function handler2() {&lt;br /&gt;
 document.test.result.value=&amp;quot;Set by handler2&amp;quot;&lt;br /&gt;
 document.test.clickMe.onclick=handler1&lt;br /&gt;
}&lt;br /&gt;
//--&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&lt;br /&gt;
&amp;lt;BODY&amp;gt;&lt;br /&gt;
&amp;lt;FORM NAME=&amp;quot;test&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;INPUT TYPE=&amp;quot;BUTTON&amp;quot; NAME=&amp;quot;clickMe&amp;quot; VALUE=&amp;quot;Click Me!&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;P&amp;gt;&amp;lt;INPUT TYPE=&amp;quot;TEXT&amp;quot; NAME=&amp;quot;result&amp;quot; SIZE=&amp;quot;20&amp;quot;&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/FORM&amp;gt;&lt;br /&gt;
&amp;lt;SCRIPT LANGUAGE=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
 document.test.clickMe.onclick=handler1&lt;br /&gt;
//--&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==W3C Event Capture and Bubble==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;title&amp;gt;W3C DOM Event Propagation&amp;lt;/title&amp;gt; &lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function init() { &lt;br /&gt;
    window.onclick = winEvent; &lt;br /&gt;
    document.onclick = docEvent; &lt;br /&gt;
    document.body.onclick = docBodEvent; &lt;br /&gt;
    document.addEventListener(&amp;quot;click&amp;quot;, docEvent, true); &lt;br /&gt;
    document.forms[0].addEventListener(&amp;quot;click&amp;quot;, formCaptureEvent, true); &lt;br /&gt;
    document.forms[0].addEventListener(&amp;quot;click&amp;quot;, formBubbleEvent, false); &lt;br /&gt;
} &lt;br /&gt;
function winEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;window object level (&amp;quot; + getPhase(evt) + &amp;quot;).&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function docEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;Document level (&amp;quot; + getPhase(evt) + &amp;quot;).&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function docBodEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;BODY level (&amp;quot; + getPhase(evt) + &amp;quot;).&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function formCaptureEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;FORM only on CAPTURE.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function formBubbleEvent(evt) { &lt;br /&gt;
    alert(&amp;quot;FORM only on BUBBLE.&amp;quot;); &lt;br /&gt;
} &lt;br /&gt;
function getPhase(evt) { &lt;br /&gt;
    switch (evt.eventPhase) { &lt;br /&gt;
        case 1: &lt;br /&gt;
        return &amp;quot;CAPTURING&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        case 2: &lt;br /&gt;
        return &amp;quot;AT TARGET&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        case 3: &lt;br /&gt;
        return &amp;quot;BUBBLING&amp;quot;; &lt;br /&gt;
            break; &lt;br /&gt;
        default: &lt;br /&gt;
        return &amp;quot;&amp;quot;; &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body onload=&amp;quot;init()&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;form&amp;gt; &lt;br /&gt;
&amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Button &amp;quot;main1&amp;quot;&amp;quot; name=&amp;quot;main1&amp;quot; onclick=&amp;quot;alert(&amp;quot;button (&amp;quot; + getPhase(event) + &amp;quot;).&amp;quot;)&amp;quot; /&amp;gt; &lt;br /&gt;
&amp;lt;/form&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt; &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>