| CaptureEvents()¿¡¼ return °ª | Go to Event Method |
| À̺¥Æ®ÀÇ return°ª 1 | |
| À̺¥Æ®ÀÇ return°ª 2 | |
function eventTest(e) { // (1)
window.status = "Event type is "+e.type+ "this name is "+this.name);
}
...
<form name=FO>
<input name=BU type=button value="Click Me">
</form>
<script>document.FO.BU.onmousedown = eventTest</script>
ÆûÀÇ BU ¹öưÀÇ mousedown À̺¥Æ® Çîµé·¯¿¡ eventTest¸¦ ÁöÁ¤ Çß½À´Ï´Ù. JavaScript·Î ¾î¶² Object¿¡°Ô À̺¥Æ® Çîµé·¯¸¦
ÁöÁ¤½Ã µÎ °¡Áö°¡ ÁöÁ¤µÈ ÇÔ¼ö¿¡°Ô °©´Ï´Ù. Çϳª´Â event ObjectÀ̰í, ´Ù¸¥ Çϳª´Â
À̺¥Æ®¸¦ ÁöÁ¤ÇÑ Object ÀÚ½ÅÀÔ´Ï´Ù. Áï thisÀÔ´Ï´Ù. ÀÌ µÎ°¡Áö´Â ³Ö¾îÁÖÁö ¾Ê¾Æµµ ÀÚµ¿À¸·Î °©´Ï´Ù.
NN4, IE4 µÑ ´Ù °°½À´Ï´Ù. À§ÀÇ µÎ ÁÙÀ» Á÷Á¢ ÅÃÀ¸·Î onmousedown À̺¥Æ®¸¦ ³ÖÀ»·Á¸é,
<form>
<input name=BU type=button value="Click Me" onMouseDown="go(event, this)"> ·Î Çϰí
ÇÔ¼ö¸¦ event(e, X) { window.status = "Event type is "+e.type+ "this name is "+X.name); }
·Î ÇÏ¿©¾ß ÇÕ´Ï´Ù. Áï º¸³¾ ÀÎÀÚ¸¦ Á÷Á¢ ³Ö¾îÁà¾ß ÇÕ´Ï´Ù. Åþȿ¡¼ÀÇ event ÁöÁ¤ÀÚ(Keyword)´Â event ÀÔ´Ï´Ù.
À̶§ event.type ·Î´Â º¸³¾ ¼ö ¾ø°í ²À event Àüü¸¦ º¸³»¾ß ÇÕ´Ï´Ù.
IE4¿¡¼´Â Åþȿ¡¼ ¼±¾ðÇÑ ÇÔ¼ö¿¡¼µµ event¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾Æµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
e´Â À̺¥Æ®¸¦ ÇÔ¼ö°¡ ´Ù·ê¶§¿¡ »ç¿ëÇÏ´Â nn4ÀÇ Çü½ÄÀÔ´Ï´Ù. Áï, event ÀÚü¸¦ °¡¸®Åµ´Ï´Ù.
ie4¿¡¼´Â ÀÌ e¸¦ »ç¿ëÇÒ Çʿ䰡 ¾ø½À´Ï´Ù. ´Ü¼øÈ÷ ÁöÁ¤µÈ ÇÔ¼ö¾È¿¡¼ event·Î »ç¿ëÇÏ¸é µË´Ï´Ù.
ÀÎÀÚ·Î ²À e¸¦ ¾µ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. E, eee, ¾Æ¹«°Å³ª »ç¿ëÇÏ¸é µË´Ï´Ù.
¿©±â¼ e´Â event Object¸¦ °¡¸®Åµ´Ï´Ù. ¸ðµç À̺¥Æ®Çîµé·¯(À̺¥Æ®¿¡ ÁöÁ¤µÈ ÇÔ¼ö)¿¡¼´Â À̺¥Æ®°¡ ÀϾ¸é
Àڽſ¡°Ô event Object°¡ ÁÖ¾îÁý´Ï´Ù.
ÇÔ¼ö ¾È¿¡¼ event Object¸¦ »ç¿ëÇÒ ¶§, ÀÌ e¸¦ ÇÔ¼öÀÇ ÀÎÀÚ(ÁÖ¼®(1))·Î ÁÖ°í °°Àº À̸§À» »ç¿ëÇÏ¿© event Object¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëó´Â e.type ó·³ event ObjectÀÇ Property¸¦ »ç¿ëÇϰųª captureEvents(À̺¥Æ®) ¿¡¼ ÁöÁ¤ÇÑ event¸¦ ´Ù·ç´Â À̺¥Æ® ¸Þ¼Òµå routeEvent(e), releaseEvents(e), handleEvent(e) ¸¦ »ç¿ëÇÒ ¶§ ÀÎÀÚ·Î ÁÖ°í(function eventTest(e)) »ç¿ëÇÕ´Ï´Ù.
¾î¶² ObjectÀÇ À̺¥Æ® Çîµé·¯ÀÇ return ÀÇ °ªÀº ±× ObjectÀÇ °íÀ¯ÀÛ¾÷¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. return °ªÀÌ false¶ó¸é ±× ObjectÀÇ °íÀ¯ÀÛ¾÷Àº Ãë¼Ò°¡ µË´Ï´Ù. captureEvents()¸¦ Çϰí routeEvent()¸¦ ÇÑ »óÅ¿¡¼ÀÇ »óÀ§ À̺¥Æ®ÀÇ returnÀÇ °ªÀº ÇÏÀ§ÀÇ À̺¥Æ® Çîµé·¯¿¡°Ô ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
Áï, »óÀ§ÀÇ °ªÀÌ return false; ¶ó¸é ÇÏÀ§ À̺¥Æ® Çîµé·¯ÀÇ return °ª¿¡ »ó°ü¾øÀÌ ÇÏÀ§ÀÇ À̺¥Æ® Çîµé·¯´Â È£Ãâ µÇÁö¸¸, ObjectÀÇ °íÀ¯ÀÛ¾÷Àº Ãë¼Ò µË´Ï´Ù.
IE4¿¡¼´Â event.returnValue = true(or false)¶ó´Â event ObjectÀÇ property°¡ ÀÖ½À´Ï´Ù.
À̺¥Æ®Çîµé·¯ = "function()"
¿¡¼µµ ÁöÁ¤µÈ ÇÔ¼ö ¾È¿¡¼ ¹Ýȯ °ªÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
À̺¥Æ®Çîµé·¯ = "return function()"·Î »ç¿ëÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.
±â´ÉÀº ÀÏ¹Ý return ¹®°ú °°½À´Ï´Ù. MS ¹®¼¿¡´Â..
The value of this property takes precedence over values returned by the function, such as through a return statement.
¶ó°í.. ÀÏ¹Ý return ¹® º¸´Ù ¼±ÇàÇÑ´Ù°í ³ª¿Í Àִµ¥, À̰Ͱú ÀϹÝÀûÀÎ returnÀ» µÑ ´Ù »ç¿ëÇÒ ¼ö Àִµ¥, À̰ÍÀÌ ¿ì¼±ÇÑ´Ù´Â °Í °°½À´Ï´Ù.
IE4ÀÇ event.cancelBubbleÀº ±âº»°ªÀº falseÀ̰í event.cancelBubble=true´Â
»óÇÏÀ§°¡ °°Àº À̺¥Æ® Çîµé·¯¸¦ °¡Áö°í ÀÖÀ» ¶§ ÇÏÀ§¿¡¼ ÁöÁ¤ÇÏ¸é »óÀ§ÀÇ À̺¥Æ®Çîµé·¯¸¦ Ãë¼ÒÇÕ´Ï´Ù.
À̰ÍÀº nn4¿¡¼ ÇÏÀ§¿¡¼ À̺¥Æ®¸¦ return false¸¦ ¹ÝȯÇÏ´Â °Í°ú ¿ëµµ°¡ °°½À´Ï´Ù.
À̺¥Æ®¿¡¼ returnÀÇ °ªÀº À̺¥Æ®°¡ ÀÏ¾î³ Object¿¡¼ÀÇ ±× ObjectÀÇ °íÀ¯ ÀÛ¾÷¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
¾î¶² Object°¡ °¡Áö°í ÀÖ´Â À̺¥Æ®ÀÇ ¹Ýȯ°ªÀº ÁöÁ¤µÈ °íÀ¯ÀÛ¾÷À» °áÁ¤ÇÕ´Ï´Ù. ÀÌ ¹Ýȯ °ªÀ¸·Î °íÀ¯ÀÛ¾÷À» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
°æ·Î°¡ ´Ù¸¥ ÇÁ·¹ÀÓÀ» captureEvents ÇÒ ¶§´Â signed scriptÀÇ enableExternalCapture ¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.