Internet Explorer 11 로 업데이트 되면서
attachEvent 함수를 사용할 수 없게 되었다.
IE 11에서 attachEvent는 addEventListener 함수로 대체되어 사용된다.
IE 10 이하.. IE 11 에서 해당 함수를 사용하기 위한 방법이다.
소스파일 : test.html
<html> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script type="text/javascript"> window.onload=function(){ //이벤트 동적 추가 checkAttachEvent(test_id); } function myFun1() { alert("Click!!!"); } function myFun2() { alert("Key in"); } function checkAttachEvent(eventID) { //IE 버전을 확인하여 11이상인 경우 동적으로 스크립트를 생성한다. //IE 11일 경우 script event로 생성 if(check_ie_version() > 10){ eventID.addEventListener("click", myFun1); } // IE 10 이전버전 일경우 attachEvent로 생성 else if (eventID.attachEvent) { eventID.attachEvent("onfocus", myFun2); } } //IE 버전 체크 function check_ie_version() { var ua = window.navigator.userAgent var msie = ua.indexOf ("MSIE ") if ( msie > 0 ) { return parseInt (ua.substring (msie+5, ua.indexOf (".", msie ))) } else { //IE11 이상 체크 var rv = ua.indexOf ("rv") //IE11은 MSID가 아닌 rv:11.0으로 표시 if ( rv > 0 ){ if(parseInt (ua.substring (rv+3, ua.indexOf (".", rv ))) >= 7) return 11; } return 0 } } </script> <body> <input type="text" name="test_id" id="test_id" size="20"> </body> </html> |
'WEB' 카테고리의 다른 글
[JSP] JSP, JSTL 에서 if .. else 문 (0) | 2016.02.12 |
---|---|
가우스(Gauce) 데이터넷, 트랜젝션 동적이벤트 생성 (0) | 2016.02.12 |
Internet Explorer 11을 7,8,9,10 버전으로 인식시키는 방법 (0) | 2016.02.12 |
[JavaScript] 콤마 추가 및 삭제 (0) | 2016.02.12 |
[JavaScript] 사업자번호 유효성 체크 (0) | 2016.02.12 |