»ì¸²,°Ç°­,»ýÈ°Á¤º¸

ÀͽºÇ÷η¯ ȣȯ¼ºº¸±â ¹®Á¦

2014-01-16 14:51:02


 

ÀÚÁÖ ¹¯´Â Áú¹®

 
Áú¹® 1: ºê¶ó¿ìÀúÀÇ ¹öÀü¿¡ º¯°æµÇ¸é ȣȯ¼º °ü·ÃÇÑ ºÎºÐÀÌ °¡Àå Å« À̽´ »çÇ×ÀÔ´Ï´Ù. ºê¶ó¿ìÀú³ª IE ¹öÀü¿¡ ´ëÇÑ Ã¼Å©¸¦ ¾î¶»°Ô ÇØ¾ß Çϳª¿ä?
´äº¯: ÀϹÝÀûÀ¸·Î ȣȯ¼º °ü·ÃÇÑ Àå¾Ö Áß¿¡¼­ °¡Àå ºó¹øÇÏ°Ô ¹ß»ýÇÏ´Â ¿¡·¯ÀÇ ¿øÀÎ Áß ´ëºÎºÐÀÌ ¹öÀü üũ¸¦ ÇÏÁö ¾Ê°Å³ª UA String °ªÀ» Á¦´ë·Î ó¸®ÇÏÁö ¸øÇØ ¹ß»ýÇÕ´Ï´Ù.
À¥ ¼­¹ö³ª À¥ ÆäÀÌÁö´Â ÀÎÅÍ³Ý ºê¶ó¿ìÀú·ÎºÎÅÍ Á¾·ù¿Í ¹öÀü µîÀÇ Á¤º¸¸¦ ¹Þ¾Æ¼­ °¢ ºê¶ó¿ìÀú¿Í ¹öÀü¿¡ ¸Â´Â ÆäÀÌÁö¸¦ º¸¿©ÁÖ°Ô ÇÕ´Ï´Ù. ÀÌ ¶§ ºê¶ó¿ìÀú¿¡¼­ Á¦°øÇÏ´Â Á¤º¸¸¦ UA(User Agent) stringÀ̶ó°í ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î IE8±îÁö´Â ¡°Mozilla/4¡±¿´´ø UA String °ªÀÌ IE9¿¡¼­´Â ¡°Mozilla/5¡±·Î º¯°æµÇ¾úÀ¸¹Ç·Î
´Ü¼øÈ÷ UA String °ªÀÌ ¡®Mozilla/5¡¯ ÀÎÁö¸¦ ºñ±³ÇÏ¿© Internet Explorer¿Í Ÿ ºê¶ó¿ìÀú¸¦ ÆÇ´ÜÇÏ¿©¼­´Â ¾ÈµË´Ï´Ù.
¶ÇÇÑ ¡°MSIE 9.0¡± °ªÀ» ¾ò¾î¼­ IEÀÇ ¹öÀüÀÌ ¡°9¡±ÀÓÀ» ÀνÄÇÒ ¼ö ÀÖ½À´Ï´Ù.

ºê¶ó¿ìÀú ¹× IE ¹öÀü ÆÇ´Ü ¹æ¹ýÀº ¾Æ·¡ »ùÇà Äڵ带 Âü°í ÇϽñ⠹ٶø´Ï´Ù.
function getInternetExplorerVersion() {
var rv = -1;
if (navigator.appName == 'Microsoft Internet Explorer') {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1);
}
return rv;
}
function checkVersion() {

var ver = getInternetExplorerVersion();
if (ver > -1)
msg = "You are using Internet Explorer " + ver;
else
msg = "You are not using Internet Explorer";
alert(msg);
}
¶ÇÇÑ ÀϺΠActiveX °ü·ÃÇؼ­ ·¹Áö½ºÆ®¸®ÀÇ °ªÀ» ÀÌ¿ëÇؼ­ IEÀÇ ¹öÀüÀ» üũÇÏ´Â °æ¿ì°¡ Àִµ¥, ÀÌ·± °æ¿ì UA StringÀ» »ç¿ëÇϸé À̸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù.
 
Áú¹® 2: IE9À» ÅëÇØ À¥ »çÀÌÆ®¿¡ Á¢¼ÓÇß´õ´Ï ½ºÅ©¸³Æ® ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù. ÇöÀç ÀÚÁÖ ¹ß»ýµÇ´Â ¿À·ù´Â ¾î¶² °ÍµéÀÌ ÀÖ³ª¿ä? ±×¸®°í ÀÌ·± °æ¿ì ¾î¶»°Ô ´ëóÇØ¾ß Çϳª¿ä?
´äº¯: IE9 ³»ºÎÀûÀ¸·Î´Â ÄÚµå ³×ÀÓ ¡°Chakra¡±¶ó°í À̸§ ºÙ¿©Áø »õ·Î¿î Javascript ¿£ÁøÀ» »ç¿ëÇÕ´Ï´Ù. Chakra´Â »õ·Î¿î Javascript ÄÄÆÄÀÏ·¯¸¦ Æ÷ÇÔÇÏ°í Àִµ¥, ÀÌ ÄÄÆÄÀÏ·¯°¡ ¼Ò½º Äڵ带 ÄÄÆÄÀÏÇÏ¿© ±â°è¾î·Î ¹Ù²ãÁÖ¸ç, »õ·Î¿î ÀÎÅÍÇÁ¸®ÅÍ¿Í ´õºÒ¾î ·±Å¸ÀÓ°ú ¶óÀ̺귯¸®µµ ÃÖÀûÈ­ÇÏ¿© ½ÇÇàÀ» Çâ»ó½ÃÄÑ ÁÝ´Ï´Ù. ¶ÇÇÑ ½ºÅ©¸³Æ® Äڵ带 ¹é±×¶ó¿îµå¿¡¼­ ÄÄÆÄÀÏ Çϱ⠶§¹®¿¡ ½ºÅ©¸³Æ® ÄÚµåÀÇ º¯°æ ¾øÀÌ ¸ÖƼÄÚ¾î ¸Ó½Å¿¡¼­ ´õ ÈǸ¢ÇÑ ¼º´ÉÀ» ¹ßÈÖÇÕ´Ï´Ù
ÀÚ¹Ù½ºÅ©¸³Æ® ¿¡·¯¿Í °ü·ÃÇؼ­ ÇöÀç±îÁö ÁÖ·Î ¹ß»ýµÇ´Â ½ºÅ©¸³Æ® ¹®Á¦ À¯ÇüÀº ´ÙÀ½°ú °°½À´Ï´Ù.
 ·Î±×ÀÎ ½ÇÆÐ
 ¹öÆ° Ŭ¸¯½Ã ¿À·ù
 È­¸é ¾È º¸ÀÓ
 ·»´õ¸µ ±úÁü
ÀÌ·¯ÇÑ ¿À·ù¿¡ ´ëÇؼ­´Â ±âÁ¸ÀÇ »ç¿ëÇÑ Javascript Äڵ带 À¥ Ç¥ÁØÀ» ¸Â°Ô ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù. À¥ Ç¥ÁØÀ» ÁؼöÇÏÁö ¾Ê´Â °æ¿ì IE8¿¡¼­ Àß µ¿ÀÛÇÏ´õ¶óµµ ¿¡·¯°¡ ¹ß»ýµÉ ¼ö ÀÖÀ¸´Ï ÀÌÁ¡ Âü°í ÇϽñ⠹ٶø´Ï´Ù.
 
Áú¹® 3: ·Î±×ÀÎ ¹öÆ° Ŭ¸¯ ½Ã ¿À·ù ¸Þ½ÃÁö°¡ ¹ß»ýÇÕ´Ï´Ù. ÀÌ·± °æ¿ì ¾î¶»°Ô ´ëóÇØ¾ß Çϳª¿ä?
´äº¯: ÀÌÀü ¹öÀü±îÁö´Â getElementById()ÀÇ °æ¿ì document¿¡¼­ ÇØ´ç ID¿¡ ´ëÇÑ uniqueÇÑ html ¿ä¼Ò¸¦ ã¾Æ Áִµ¥, IEÀÇ °æ¿ì ÇØ´ç ¿ä¼ÒÀÇ ID¿Í Name ¼Ó¼ºÀ» ¸ðµÎ ãÀ» ¼ö ÀÖ½À´Ï´Ù.
±×·¯³ª IE9¿¡¼­´Â ID ¼Ó¼º¸¸ÀÌ À¯È¿ÇÏ°Ô µÇ°í, Name ¼Ó¼ºÀ» »ç¿ëÇÏ´Â °æ¿ì null °ªÀ» ¹ÝȯÇÏ°Ô µË´Ï´Ù.
<input type='checkbox' name='NxCheckKeyDefense' ... >
var objKeyDefense = document.getElementById("NxCheckKeyDefense") ;
ÀÌ·¯ÇÑ ¹®Á¦Á¡À» ÇØ°áÇϱâ À§Çؼ­´Â °³Ã¼¿¡ ID ¼Ó¼ºÀ» ºÎ¿©ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.
<input type='checkbox' name='NxCheckKeyDefense' id=¡°NxCheckKeyDefense¡¯>
var objKeyDefense = document.getElementById("NxCheckKeyDefense") ;
 
Áú¹® 4: CreateElement() ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °æ¿ì ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù. ÀÌ·± °æ¿ì ¾î¶»°Ô ´ëóÇØ¾ß Çϳª¿ä?
´äº¯: »õ·Î¿î °´Ã¼¸¦ ¸¸µé±â À§ÇØ CreateElement() ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °æ¿ì IE9¿¡¼­´Â createElement() ÇÔ¼öÀÇ Àμö¿¡ ¡°<>¡±°¡ Æ÷ÇԵǾ´Â ¾ÈµË´Ï´Ù.
createElement(¡®<div id=¡°¡¯+LOGIN.CL.CONTAINERID_INST+¡¯¡± style=¡°display:none¡±></div>¡¯);
ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϱâ À§Çؼ­´Â createElement() ÇÔ¼ö¸¦ ÅëÇØ DOM°³Ã¼¸¦ »ý¼ºÇÏ°í setAttribute() ÇÔ¼ö¸¦ ÅëÇØ ¼Ó¼ºÀ» ºÎ¿©ÇÏ´Â °ÍÀÌ ¿Ã¹Ù¸¥ ¹æ¹ýÀÔ´Ï´Ù.
obj = document.createElement("div");
obj.setAttribute("id", LOGIN.CK.CONTAINERID);
obj.setAttribute("style", "display:none; position:absolute;");
document.body.appendChild(obj);
 
Áú¹® 5: IE9°ú Javascript Frameworks µé°£ÀÇ È£È¯¼º ¹®Á¦°¡ ¹ß»ýÇÕ´Ï´Ù. ¾î¶»°Ô ÇØ¾ß Çϳª¿ä?
´äº¯: IE9¿¡¼­´Â À¥ Ç¥ÁØ¿¡ µû¶ó ECMAscript 5¸¦ Javascript ¿£ÁøÀ¸·Î äÅÃÇÏ¿© ÃÖÀûÈ­µÈ ¼º´ÉÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ·Î ÀÎÇÑ º¯È­¿¡ µû¶ó ±¸¹öÀüÀÇ Jquery, Prototype, Moo tools ¿Í °°Àº Javascript frameworks ¿Í ȣȯ¼º ¹®Á¦°¡ ¹ß»ýÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
Framework º°·Î °³¹ß»ç¿¡¼­ IE9°úÀÇ È£È¯¼º ¹®Á¦¸¦ ÇØ°áÇÏ´Â ¾÷µ¥ÀÌÆ®°¡ Áö¼ÓÀûÀ¸·Î ÀÌ·ç¾îÁö°í ÀÖÀ¸¹Ç·Î, ÀÌ·¯ÇÑ °æ¿ì ÇØ´ç Framework¸¦ ÃֽŠ¹öÀüÀ¸·Î ¾÷µ¥ÀÌÆ® ÇÏ´Â °ÍÀ» ±ÇÀåÇÕ´Ï´Ù.
ÀÌ¿Í °ü·ÃµÈ º¸´Ù ÀÚ¼¼ÇÑ »çÇ×Àº ¾Æ·¡ URLÀ» Âü°í Çϱ⠹ٶø´Ï´Ù.
http://blogs.msdn.com/b/ie/archive/2010/07/16/how-ie9-platform-preview-feedback-changed-the-javascript-standard.aspx
 
Áú¹® 6: ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ ÅëÇÑ ¾Ïȣȭ ±â´ÉÀ» »ç¿ëÇÑ ¿µ¿ªÀÌ Á¤»óÀûÀ¸·Î Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù. ÀÌ·¯ÇÑ °æ¿ì ¾î¶»°Ô ´ëóÇØ¾ß Çϳª¿ä?
´äº¯: IE9¿¡¼­´Â Jscript.Encode/Jscript.Decode¸¦ Áö¿øÇÏÁö ¾ÊÀ¸¹Ç·Î <script language=¡°Jscript.Encode¡±>¿Í °°ÀÌ Jscript¸¦ ÅëÇØ ½ºÅ©¸³Æ®¸¦ ¾ÏȣȭÇÏ´Â °æ¿ì ½ºÅ©¸³Æ® ÆÄÀÏÀÌ Ã³¸®µÇÁö ¾Ê½À´Ï´Ù.
<script language=¡°Jscirpt.Encode¡± src=¡°/commonEncode.js¡±>
IE9¿¡¼­´Â ½ºÅ©¸³Æ® ¾Ïȣȭ¸¦ Áö¿øÇÏÁö ¾ÊÀ¸¹Ç·Î ½ºÅ©¸³Æ®¸¦ ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
<script src=¡°/common.js¡± type=¡°text/javascript¡±>
 
Áú¹® 7: iframe ³» Ãß°¡ Á¤º¸°¡ Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù. ÀÌ·¯ÇÑ °æ¿ì ¾î¶»°Ô ´ëóÇØ¾ß Çϳª¿ä?
´äº¯: IE8¿¡¼± ÀÚ½Ä ÇÁ·¹ÀÓÀº ºÎ¸ð ÇÁ·¹ÀÓ°ú´Â º°µµ·Î µ¶¸³ÀûÀÎ ¹öÀüÀ» Áö´Ò ¼ö ÀÖ¾úÁö¸¸, IE9¿¡¼­´Â ÀÌÀü ¹öÀü°ú ´Ù¸¥ DOM¸ðµ¨À» »ç¿ëÇϱ⠶§¹®¿¡ ºÎ¸ð ÇÁ·¹ÀÓ°ú ÀÚ½Ä ÇÁ·¹ÀÓÀÌ µ¶¸³ÀûÀÎ ¹öÀüÀ» °¡Áö´õ¶óµµ ºÎ¸ð ÇÁ·¹ÀÓ¿¡ ¸ÂÃß¾î µ¿ÀÛÇÏ°Ô µË´Ï´Ù.