본문 바로가기
Frontend/JavaScript

자바스크립트에서 IE버전 확인하는 방법

by 지구 2019. 6. 12.

==== 2019.07.23 추가 ====

들어가기 전에 앞서서, 아래 방법보다 더 좋은 방법을 찾아서 위에 얹어놓습니다.

$.browser.msie / $.browser.version

아래 적어놓은 긴 코드 필요없이 위 jQuery 로도 충분히 확인이 가능합니다! (safafi, chrome, ie 확인)

 


JavaScript 에서 현재 보고 있는 화면이 Chrome 인지, IE(Internet Explorer) 인지 확인해야 될 때가 있다.

특히, 내가 사용한 jQuery 나 JavaScript 기능 중 에서 IE버전을 탈 때....

 

브라우저에서 콘솔로 navigator.userAgent 명령어를 내리면 아래와 같이 뿌려주는데, 이걸로 파싱을 할 수 있다!

 

* Chrome

Chrome

* IE8

IE8

* IE9

IE9

* IE10

IE10

* IE11

IE11

 

각 브라우저에서 호출해보면  IE 는 "MSIE", Chrome 은 "Chrome" 처럼 브라우저 마다 고유의 단어들이 있다.

이 단어를 기준으로 파싱하면 되는데, 나는 IE버전을 확인하는 function 을 아래처럼 만들고 사용했다. :D

 

( 주의: IE11 부터는 "MSIE" 단어가 없어졌으므로, 공통으로 사용하려면 "Trident" 단어를 기준으로 잡거나 IE10 이하만 파싱하도록 하자! )

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/**
 * Internet Explorer 버전 체크
 * (IE11 이상은 userAgent 파싱 기준이 달라서 체크 불가)
 * @returns  : IE8 = 8, !IE = -1
 */
 ieVersionCheck: function() {
    var version = -1;
    if (navigator.appName == "Microsoft Internet Explorer"
        && navigator.userAgent.toLowerCase().indexOf("msie"!= -1
        && new RegExp("MSIE ([0-9][\./0-9])").exec(navigator.userAgent) != null) {
        
        version = parseInt(RegExp.$1);
    }
 
    return version;
}
cs

 

반응형

댓글