| routeEvent() | Go to Event Method |
<div id=div1>
<a href="javascript:alert('HREF')" onClick="alert('LINK')">LINK</a>
</div>
<script language="JavaScript">
function divClick(e) { //(1)
alert("DIV1 Clicked");
this.routeEvent(e); //(2)
return false; //(3)
}
document.div1.document.captureEvents(Event.CLICK)
document.div1.document.onclick = divClick;
</script>
routeEvent()´Â ¾î¶² Object¿¡¼ ƯÁ¤ À̺¥Æ®¸¦ captureEvents ÇßÀ» ¶§, ÇÏÀ§ÀÇ °°Àº Á¾·ùÀÇ À̺¥Æ®¸¦ °¡Áø
ObjectÀÇ À̺¥Æ® Çîµé·¯¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù. À§ÀÇ ÁÖ¼®(2)¹øÀÌ À̰ÍÀÔ´Ï´Ù. À̰ÍÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é div1 CSS Layer ¾ÈÀÇ LINK ¸µÅ© ÅÃÀÇ alert('LINK') âÀº »óÀ§¿¡¼ captureEvents¸¦ Ç߱⠶§¹®¿¡ ³ª¿ÀÁö ¾Ê½À´Ï´Ù. À̰ÍÀ» ³Ö¾îÁÖ¸é div1ÀÇ À̺¥Æ®Çîµé·¯, "DIV1 Clicked" alertâÀÌ ¸ÕÀú ½ÇÇàµÇ°í ¸µÅ©ÀÇ alert('LINK') âÀÌ ³ª¿É´Ï´Ù.
ÁÖ¼®(3)¹øÀÇ return false´Â ObjectÀÇ ÀÛ¾÷À» Ãë¼ÒÇÕ´Ï´Ù. ¿©±â¼ Object´Â div1 layerÀÔ´Ï´Ù. µû¶ó¼ ÇÏÀ§ÀÇ ¸µÅ© ÅÃÀÇ returnÀÇ °ªµµ ÀÚµ¿À¸·Î return false;°¡ µË´Ï´Ù. µû¶ó¼ ¸µÅ©ÅÃÀÇ alert('HREF')´Â ³ª¿ÀÁö ¾Ê½À´Ï´Ù.
routeEvent(e)°¡ ÁöÁ¤µÇ¸é routeEvent()¿¡ ÀÇÇØ¼ ÀÏ¾î³ ÇÏÀ§ ObjectÀÇ À̺¥Æ®ÀÇ ¹Ýȯ°ªÀÌ ¹ÝȯµË´Ï´Ù. ¸µÅ©Åà ¾È¿¡ onClick="...; return true">°¡ ÀÖÀ¸¸é routeEvent(e)´Â TRUE °ªÀ» ¹ÝȯÇÕ´Ï´Ù.
Áï, ÁÖ¼®(2)¹øÀ» if ( document.div1.routeEvent(e) ) ·Î ÇØº¸¸é TRUE¸¦ ¹ÝȯÇÕ´Ï´Ù. ¾î¶² Á¦¾î¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç´Â (2)¹øÀ» var flag = document.routeEvent(e); Çϸé routeEvent ¹ÞÀº À̺¥Æ®°¡ return trueÀ̸é flag´Â trueÀ̰í, ±×·¸Áö ¾ÊÀ¸¸é falseÀÔ´Ï´Ù. ÀÌ flag·Î divClick ÇÔ¼öÀÇ ¹Ýȯ °ªÀ» Á¶Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
routeEvent()ÁöÁ¤½Ã captureEvents()¸¦ ÁöÁ¤ÇÑ Object¸¸ routeEvent()¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸£°Å³ª captureEvents() ¾øÀÌ routeEvent()¸¦ ½ÇÇà½Ã °è¼Ó captureEvents¿¡¼ ÁöÁ¤ÇÑ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. (Ctrl-Alt-Del Ű·Î ²¨¾ßÇÕ´Ï´Ù.)