¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃß ¸Å´º | ../ |
RightButton_Menu 1 / RightButton_Menu 2 / RightButton_Menu 3
<style type="text/css">
#rightMenu {
position:absolute; top:0px; left:0px;
width:100px; visibility:hidden; padding:10px;
background-color:yellow; layer-background-color:yellow;
}
</style>
<div id=rightMenu>
<a href="#" onClick="history.go(-1); return false">[µÚ·Î]</a><br>
<a href="#" onClick="self.location.reload(); return false">[»õ·Î°íħ]</a><br>
<a href="#" onClick="self.location.href = 'view-source:' + self.location.href; return false">[¼Ò½ºº¸±â]</a>
<a href="#top">[T O P]</a>
</div>
À§´Â ¸Å´º·Î »ç¿ëÇÒ #rightMenu ·¹À̾îÀÔ´Ï´Ù. ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃ߸¦ ´©¸£¸é ³ª¿É´Ï´Ù. (¾ÆÁ÷µµ ¿À¸¥ÂÊ
´ÜÃ߸¦ ´©¸£Áö ¾Ê¾Ò³ª¿ä..? :) °£´ÜÇÑ ·¹À̾îÀÔ´Ï´Ù. ·¹ÀÌ¾î ±¸¼ºÀº ¿øÇÏ´Â µ¥·Î ¸¸µé¸é µË´Ï´Ù. À̹ÌÁö¸¦
³Ö¾îµµ table·Î ¸¸µé¾îµµ µË´Ï´Ù.
¿À¸¥ÂÊ ¸¶¿ì½º¸¦ ´·¶À» ¶§, ³ª¿À´Â ¸Å´º´Â nn4¿¡¼´Â mousedownÀ̰í ie4, ie5¿¡¼´Â mouseupÀÔ´Ï´Ù. À̰ÍÀº ºê¶ó¿ìÀú ¾÷üÀÇ ¹®¼¿¡¼µµ º¸Áö ¸øÇß´Â °ÍÀÔ´Ï´Ù. ±×·±µ¥, ¾î¶»°Ô ¾Ë¾Ò³Ä°í¿ä..? °¡Àå È®½ÇÇÑ ¹®¼¶ó°í ÇÒ ¼ö ÀÖ´Â ºê¶ó¿ìÀú ÀÚüÀÔ´Ï´Ù. ¸¶¿ì½º¸¦ ´·¯º¸¼¼¿ä.. ±×·¯¸é ¾î¶»°Ô µ¿ÀÛÇÏ´ÂÁö ¾Ë°ÍÀÔ´Ï´Ù. (!! ¿©±â¼ ie4¿¡¼ mousedown À̺¥Æ®¸¦ »ç¿ëÇÏ¸é ¿©·¯¹ø µ¿À۽à ´Ù¿îµÉ ¼ö ÀÖ½À´Ï´Ù.)
¾Æ·¡·Î ÆäÀÌÁö ¾Æ¹«µ¥³ª ¸¶¿ì½º·Î ´·¯µµ ÀÛµ¿ ½Ã۱â À§Çؼ document¿¡ myMenu À̺¥Æ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
if(document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown = myMenu;
}
if(document.all) {
document.onmouseup = myMenu;
}
nn4¿¡¼´Â MOUSEDOWNÀ» ie4, ie5¸¦ À§Çؼ´Â MOUSEUPÀ» ÁöÁ¤ÇÕ´Ï´Ù. ±×·¯¸é ÆäÀÌÁö Àüü¿¡¼
¸Å´º°¡ µ¿ÀÛÇÏ¿© ³ª¿É´Ï´Ù. nn4¿ë¿¡ ÀÖ´Â captureEvents() ´Â À̺¥Æ®ÀÇ ¹üÀ§¸¦ ÁöÁ¤½Ã ÇØÁÖ¾î¾ß ÇÏ´Â
nn4ÀÇ Çü½ÄÀÔ´Ï´Ù. À̰ÍÀº "DHTML - À̺¥Æ® ¸Å¼Òµå" ÆäÀÌÁö¿¡ ÀÖ½À´Ï´Ù.
±×¸®°í °¢ À̺¥Æ®¿¡ ÁöÁ¤ÇÑ myMenu()ÇÔ¼ö´Â ¾Æ·¡ÀÔ´Ï´Ù.
function myMenu(e) {
if (document.layers && document.rightMenu) {
if (e.which == 1) {
setTimeout('document.rightMenu.visibility = "hidden"', 10)
}
else if (e.which == 3) {
document.rightMenu.left = e.pageX
document.rightMenu.top = e.pageY
document.rightMenu.visibility = "visible";
return false;
}
}
else if (document.all && document.all.rightMenu) {
if (event.button == 1) {
setTimeout('rightMenu.style.visibility = "hidden";', 10);
}
else if (event.button == 2) {
rightMenu.style.posLeft = event.clientX + document.body.scrollLeft
rightMenu.style.posTop = event.clientY + document.body.scrollTop
rightMenu.style.visibility = "visible";
rightMenu.focus();
}
}
}
À§ÀÇ myMenu ÇÔ¼ö·Î ¸Å´º¸¦ º¸¿©ÁÝ´Ï´Ù. ºê¶ó¿ìÀú ÀÚüÀÇ ¸Å´º°¡ ³ª¿ÀÁö ¾Ê´Â °ÍÀÌ Àß ÀÌÇØ°¡
µÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù. nn4¿¡¼´Â À̺¥Æ®¿¡¼ return false;·Î 'false'¸¦ ¹ÝȯÇÕ´Ï´Ù
À̺¥Æ®ÀÇ ¹Ýȯ°ªÀÌ 'false'ÀÌ¸é ±× À̺¥Æ®´Â Ãë¼ÒµË´Ï´Ù. ±×·¡¼ ³ª¿ÀÁö ¾Ê½À´Ï´Ù. À̰ÍÀº JavaScript À̺¥Æ®ÀÇ
±âº»ÀûÀÎ µ¿ÀÛÀÔ´Ï´Ù. ie¿¡¼´Â À̺¥Æ®¿¡ °üÇÑÇÑ ÀÌ·± ÀüÅë(Ç¥ÁØÀ̶ó°í´Â ¸»ÇÒ ¼ö ¾ø½À´Ï´Ù.)À» ¹«½ÃÇÏ´Â
°ÍÀÌ ¸¹½À´Ï´Ù. ±×·¡¼ ¿À¸¥ÂÊ ¸Å´ºÀÎ ÀÌ °æ¿ìµµ µÇÁö¾Ê½À´Ï´Ù. return false; ³ª event.returnValue = false;
µÑ´Ù µèÁö ¾Ê½À´Ï´Ù.
±×·¯¸é ie4¿¡¼ÀÇ ¹®Á¦¸¦ ¾î¶»°Ô ±Øº¹ÇÒ±î¿ä..? ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃ߸¦ ´·¶À» ¶§, ¾î¶»°Ô ¸Å´º¸¦ ´Ý³ª¿ä..? ¸Å´º ¿ÜÀÇ ºê¶ó¿ìÀú °ø°£À» ´©¸£¸é ¸Å´º°¡ ´ÝÈü´Ï´Ù. À̰ÍÀº ¸Å´º°¡ focus¸¦ ÀÒ¾î¼ ³ª¿É´Ï´Ù. ÀÌ·± °æ¿ì¿¡´Â blur À̺¥Æ®°¡ ºê¶ó¿ìÀú ¾È¿¡ ³»ÀåµÇ¾î ÀÖÀ» °ÍÀÔ´Ï´Ù. ¿ì¸®´Â ´Ü¼øÈ÷ ´Ù¸¥ °÷¿¡´Ù°¡ ¸¶¿ì½º·Î ´©¸£¸é µË´Ï´Ù. ÀÌ ´Ù¸¥°÷¿¡ ¸¶¿ì½º¸¦ ´©¸£´Â °Í ¶ÇÇÑ À̺¥Æ®ÀÔ´Ï´Ù.
´Ü¼øÈ÷, À¥ ÆäÀÌÁö¸¦ ´·¶Áö¸¸, ºê¶ó¿ìÀú ¿¡°Ô´Â ¿©·¯ À̺¥Æ®°¡ °©´Ï´Ù. ¸ÕÀú mousedownÀÌ °¡°í click, focus, mouseup À̺¥Æ®°¡ Â÷·Ê·Î °©´Ï´Ù. focus À̺¥Æ®°¡ °©´Ï´Ù. ±×·¯´Ï ºê¶ó¿ìÀú ÀÚüÀÇ ¸Å´º´Â blur¸¦ ½ÇÇàÇÏ¿© ¸Å´º°¡ ³ª¿À±âµµ Àü¿¡ ´ÝÈ÷´Â °ÍÀÔ´Ï´Ù. À̰ÍÀ» Çϱâ À§Çؼ À§ÀÇ myMenu ÇÔ¼ö¿¡¼ ¾Æ·¡·Î focus¸¦ ´Ù¸¥ °÷¿¡ ÁÝ´Ï´Ù.
else if (document.all) {
rightMenu.focus();
}
¸Å´º ÀÚü¿¡°Ô focus¸¦ ÁÝ´Ï´Ù. focus¸¦ ¹ÞÀ» ¼ö ÀÖ´Â °ÍÀÌ¸é ¾Æ¹«°Å³ª »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. focus
À̺¥Æ®°¡ ÀÖ´Â °´Ã¼´Â ¿©·¯°¡Áö°¡ ÀÖÁö¸¸ window, layer(ie4 div ÅÃ) °´Ã¼°¡ °¡Áö°í ÀÖ½À´Ï´Ù.
Æû type="text" ¿¡µµ ÀÖ½À´Ï´Ù. ±×·¡¼ ÆûÀ» ¸¸µé°í Æû¿¡ focus¸¦ Á־ µË´Ï´Ù. ÇÁ·¹ÀÓ ÆäÀÌÁö¶ó¸é
´Ù¸¥ ÇÁ·¹ÀÓ¿¡ focus¸¦ Á־ µË´Ï´Ù. alert(), confirm()µµ ´ç¿¬È÷ focus¸¦ °¡Áý´Ï´Ù.
RightButton_Menu 1 / RightButton_Menu 2 / RightButton_Menu 3