¼Ö·ç¼Ç°³¹ßºÎ Àü·«°³¹ßÆÀ ·ùÁ¾Çö
À¥ºê¶ó¿ìÀú¿¡¼ DHTML°ú Javascript·Î ÇÁ·Î±×·¡¹Ö ÇÒ ¶§ ÆË¾÷âÀ» Ȱ¿ëÇÕ´Ï´Ù.
ÆË¾÷â¿¡¼ ¿ø·¡Ã¢ÀÇ °ªÀ̳ª ÇÔ¼ö¸¦ »ç¿ëÇÏ·Á¸é opener. ·Î ½ÃÀÛÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
¹Ý´ë·Î ÆË¾÷âÀ» ¶ç¿öµÎ°í ¿ø·¡Ã¢¿¡¼ ÆË¾÷âÀ» »ç¿ëÇÒ ¶§°¡ ÀÖ½À´Ï´Ù.
±×·± »óȲÀº ¸¹Áö´Â ¾Ê¾Æ¼ ÇØ°áÇÒ ¼ö ¾ø´Â ¹®Á¦·Î ³²°ÜµÎ±âµµ ÇÕ´Ï´Ù.
ÀÌÁ¦ ¿ø·¡Ã¢¿¡¼ ÆË¾÷âÀ» Á¦¾îÇÒ ¼ö ÀÖ´Â Äڵ带 ¾Ë·Áµå¸³´Ï´Ù.
¸ñÂ÷
ÆË¾÷âÀÇ Áߺ¹¿¸² ¹æÁö
ÆË¾÷âÀ» ´ÝÀ» °æ¿ì
¿ø·¡Ã¢À» ´ÝÀ» °æ¿ì
ÆË¾÷âÀÇ °³Ã¼¿¡ Á¢±Ù
ÆË¾÷âÀÇ ÂüÁ¶
¿ø·¡Ã¢¿¡¼ <a target=...>¶Ç´Â open(...)¸Þ¼Òµå·Î ÆË¾÷âÀ» ¶ç¿ï ¼ö ÀÖ½À´Ï´Ù.
ÆË¾÷âÀ» ¶ç¿ï¶§ ±×°ÍÀÇ ÂüÁ¶¸¦ ¿ø·¡Ã¢¿¡ ¼Ó¼ºÀ¸·Î ÀúÀåÇÕ´Ï´Ù.
ÆË¾÷âÀÇ ÂüÁ¶´Â open¸Þ¼ÒµåÀÇ ¸®ÅϰªÀÔ´Ï´Ù.
window._childwin = window.open('¹®¼ÆÄÀÏ', 'âÀ̸§', 'âƯ¼º');
ÀÌ·¸°Ô ÇÏ°í ³ª¸é window._childwinÀ» ÅëÇØ¼ ÆË¾÷âÀ» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÆË¾÷âÀÇ Áߺ¹¿¸² ¹æÁö
ÆË¾÷âÀÌ ¶°ÀÖÀ»¶§ ¿ø·¡Ã¢¿¡¼ ÆË¾÷âÀ» ´Ù½Ã ¶ç¿ì¸é ÆË¾÷âÀÇ ³»¿ëÀÌ °»½ÅµË´Ï´Ù.
ÀÌ ÆË¾÷âÀÇ Àç·ÎµùÀ» ¹æÁöÇÏ°í ½Í´Ù¸é ¿ø·¡Ã¢¿¡¼ ÆË¾÷â ¶ç¿ì´Â Äڵ带 ´Ù½Ã ÀÛ¼ºÇÕ´Ï´Ù.
function openwin()
{
if ( window._childwin ) // »õâÀÌ ¶ç¿öÁ® ÀÖÀ»¶§
{
window._childwin.focus();
}
else // »õâÀÌ ¶ç¿öÁ® ÀÖÁö ¾ÊÀ»¶§
{
window._childwin = window.open('¹®¼ÆÄÀÏ', 'âÀ̸§', 'âƯ¼º');
}
}
´ç¿¬È÷ óÀ½¿¡´Â childwinÀÇ °ªÀÎ »õâÀÇ ÂüÁ¶°¡ ÀúÀåµÇ¾î ÀÖÁö ¾ÊÀ¸¹Ç·Î else ÀÌÈÄÀÇ ¹®ÀåÀ» ½ÇÇàÇÕ´Ï´Ù.
âÀÌ ¶ç¿öÁøµÚ·Î childwinÀº »õâÀÇ ÂüÁ¶¸¦ ÀúÀåÇÏ°Ô µÇ¹Ç·Î ÇöÀçâ¿¡¼ »õâÀ» Á¦¾îÇÒ¼ö ÀÖ½À´Ï´Ù.
ÆË¾÷âÀ» ´ÝÀ» °æ¿ì
ÆË¾÷âÀ» ´Ý´Â´Ù¸é ¿ø·¡Ã¢¿¡ ÀÖ´Â window_.childwinÀ» null·Î ÇØ¾ß ÇÕ´Ï´Ù.
¸¸¾à ±×·¸Áö ¾ÊÀ»¶§ ´Ù½Ã ÆË¾÷âÀ» ¶ç¿ì°Ô µÈ´Ù¸é window._childwin.focus() ¿¡¼ ÆË¾÷âÀ» ãÀ» ¼ö ¾ø´Ù´Â ¿À·ù¸¦ ³»°Ô µË´Ï´Ù.
±×·¡¼ ÆË¾÷âÀ» ´ÝÀ» ¶§ ½ÇÇàµÇ´Â Äڵ带 Á¤ÀÇ ÇØ¾ßÇÕ´Ï´Ù. âÀ» ´ÝÀ»¶§ onbeforeunload, onunload ¼ø¼·Î À̺¥Æ®°¡ ¹ß»ýÇÕ´Ï´Ù.
ÆË¾÷â¿¡ ÄÚµùÇÒ ÇÔ¼öÀÔ´Ï´Ù.
function closewin()
{
// opener´Â ¿ø·¡Ã¢ÀÇ ÂüÁ¶
if ( opener != null ) { opener._childwin = null; self.close(); }
}
//...
</script>
</head>
<body onbeforeunload="closewin()" onunload="closewin()">
opener°¡ nullÀÌ ¾Æ´Ï¸é ¿ø·¡Ã¢ÀÌ ÀÖÀ¸¸ç, opener._childwin ÀÌ ¹Ù·Î ÆË¾÷âÀÔ´Ï´Ù.
ÀÌ °ªÀ» null·Î ÇÏ¿© ÆË¾÷âÀÌ ´ÝÇû´Ù´Â »óŸ¦ ±â¾ï½Ãŵ´Ï´Ù.
onbeforeunload¿Í onload À̺¥Æ®´Â ÆäÀÌÁö°¡ ¸®ÇÁ·¹½ÃµÇ°Å³ª ´Ù¸¥ÆäÀÌÁö·Î À̵¿ÇÒ¶§µµ ¹ß»ýÇϹǷÎ
<body onbeforeunload="closewin()"> ¶Ç´Â <body onunload="closewin()"> À¸·Î ÇÏ¸é µË´Ï´Ù.
¿ø·¡Ã¢À» ´ÝÀ» °æ¿ì
ÆË¾÷âÀÌ ¶ç¿öÁ³À»¶§ ¿ø·¡Ã¢À» ´ÝÀ¸¸é ÆË¾÷âµµ ´ÝÈ÷°Ô ÇÏ·Á°í ÇÕ´Ï´Ù.
ÀÌÀü¿¡ âÀÌ ´ÝÈú¶§ ¹ß»ýÇÏ´Â À̺¥Æ®°¡ onbeforeunload, onunload ¼ø¼·Î ÀϾٰí ÇÏ¿´½À´Ï´Ù.
¿ø·¡Ã¢¿¡ ÄÚµùÇÒ ÇÔ¼öÀÔ´Ï´Ù.
function closewin()
{
if ( window._childwin )
{ window._childwin.opener = null; window._childwin.close(); }
}
ÆË¾÷âÀÌ ¶ç¿öÁ®ÀÖ´Ù¸é ÆË¾÷â¿¡ ÀÖ´Â opener¸¦ null·Î ÇÕ´Ï´Ù. ±×°ÍÀº ¹Ù·Î ¿ø·¡Ã¢ÀÇ ÂüÁ¶À̱⠶§¹®¿¡ ´ÝÇû´Ù°í ÃʱâÈÇÏ´Â °ÍÀÔ´Ï´Ù.
±×¸®°í ÆË¾÷âÀ» ´Ý±â À§Çؼ window._childwin.close() ¸¦ È£ÃâÇÕ´Ï´Ù.
ÆË¾÷âÀÇ °³Ã¼¿¡ Á¢±Ù
window._childwinÀÌ ÆË¾÷âÀÇ ÂüÁ¶ÀÔ´Ï´Ù.
°³Ã¼ÀÇ À̸§Àº id ¼Ó¼ºÀÇ °ªÀÌ¸ç ÆË¾÷â¿¡ ÀÖ´Â id ¼Ó¼ºÀÇ °ªÀÌ 'text1' À̶ó¸é
window._childwin.document.getElementById('text1')·Î Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÆË¾÷âÀÇ À̸§Àº window._childwin.name À¸·Î ¾Ë ¼ö ÀÖ°í, ÆË¾÷â¿¡ Á¤ÀÇµÈ ÇÔ¼öÀÇ ½ÇÇàÀº
window._childwin.ÇÔ¼öÀ̸§() À¸·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù.
µµ¿òµÇ¼Ì´ÂÁö ¸ð¸£°Ú½À´Ï´Ù.
ASP.NET¿¡¼µµ ºê¶ó¿ìÀúÁ¦¾î¸¦ À§Çؼ´Â ½ºÅ©¸³Æ®°¡ ÇÊ¿äÇϱ⠶§¹®¿¡ ¾ÕÀ¸·Îµµ À¯¿ëÇÑ ½ºÅ©¸³Æ®¸¦ ¼Ò°³ÇϰڽÀ´Ï´Ù.
°¨»çÇÕ´Ï´Ù.




