복붙노트

[JQUERY] 사용자가 IE를 사용하고 있는지 확인

JQUERY

사용자가 IE를 사용하고 있는지 확인

해결법


  1. 1.자바 스크립트 방법 아래 사용

    자바 스크립트 방법 아래 사용

    function msieversion() 
    {
        var ua = window.navigator.userAgent;
        var msie = ua.indexOf("MSIE ");
    
        if (msie > 0) // If Internet Explorer, return version number
        {
            alert(parseInt(ua.substring(msie + 5, ua.indexOf(".", msie))));
        }
        else  // If another browser, return 0
        {
            alert('otherbrowser');
        }
    
        return false;
    }
    

    당신은 Microsoft 지원 사이트 아래에 세부 사항을 찾을 수 있습니다 :

    스크립트에서 브라우저 버전을 확인하는 방법

    업데이트 : (IE 11 지원)

    function msieversion() {
    
        var ua = window.navigator.userAgent;
        var msie = ua.indexOf("MSIE ");
    
        if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))  // If Internet Explorer, return version number
        {
            alert(parseInt(ua.substring(msie + 5, ua.indexOf(".", msie))));
        }
        else  // If another browser, return 0
        {
            alert('otherbrowser');
        }
    
        return false;
    }
    

  2. 2.그것은 몇 년 후, 그리고 에지 브라우저는 이제 렌더링 엔진으로 크롬을 사용합니다. IE 11 점검 슬프게도, 여전히 것입니다.

    그것은 몇 년 후, 그리고 에지 브라우저는 이제 렌더링 엔진으로 크롬을 사용합니다. IE 11 점검 슬프게도, 여전히 것입니다.

    IE의 고대 버전이 사라해야한다 여기에, 더 간단한 방법입니다.

    if (window.document.documentMode) {
      // Do IE stuff
    }
    

    여기에 내 옛날 대답 (2014)이다 :

    에지에서 사용자 에이전트 문자열이 변경되었습니다.

    /**
     * detect IEEdge
     * returns version of IE/Edge or false, if browser is not a Microsoft browser
     */
    function detectIEEdge() {
        var ua = window.navigator.userAgent;
    
        var msie = ua.indexOf('MSIE ');
        if (msie > 0) {
            // IE 10 or older => return version number
            return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
        }
    
        var trident = ua.indexOf('Trident/');
        if (trident > 0) {
            // IE 11 => return version number
            var rv = ua.indexOf('rv:');
            return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
        }
    
        var edge = ua.indexOf('Edge/');
        if (edge > 0) {
           // Edge => return version number
           return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
        }
    
        // other browser
        return false;
    }
    

    샘플 사용 :

    alert('IEEdge ' + detectIEEdge());
    

    IE 10의 문자열 기본 :

    Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)
    

    IE 11의 문자열 기본 :

    Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko 
    

    에지 (12)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0 
    

    에지 13 (들으 @DrCord)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586 
    

    에지 (14)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/14.14300 
    

    에지 (15)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063 
    

    에지 (16)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299 
    

    에지 (17)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134 
    

    에지 18 (내부자 미리보기)의 기본 문자열 :

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; ServiceUI 14) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17730 
    

    CodePen에서 테스트 :

    http://codepen.io/gapcode/pen/vEJNZN


  3. 3.브라우저가 IE인지 아닌지 당신이 알고 싶은 모든 경우, 당신은이 작업을 수행 할 수 있습니다 :

    브라우저가 IE인지 아닌지 당신이 알고 싶은 모든 경우, 당신은이 작업을 수행 할 수 있습니다 :

    var isIE = false;
    var ua = window.navigator.userAgent;
    var old_ie = ua.indexOf('MSIE ');
    var new_ie = ua.indexOf('Trident/');
    
    if ((old_ie > -1) || (new_ie > -1)) {
        isIE = true;
    }
    
    if ( isIE ) {
        //IE specific code goes here
    }
    

    지금이 좋습니다. 그것은 여전히 ​​매우 읽을 훨씬 적은 코드입니다 :

    var ua = window.navigator.userAgent;
    var isIE = /MSIE|Trident/.test(ua);
    
    if ( isIE ) {
      //IE specific code goes here
    }
    

    단축 답변에 대한 코멘트에 JohnnyFun 덕분에 :)

    당신이 할 수있는 경우 브라우저가 특정 CSS 기능을 지원하는 경우 첫째, 당신은 확인 대신 JS의 @supports 문을 사용해야합니다.

    .element {
      /* styles for all browsers */
    }
    
    @supports (display: grid) {
      .element {
        /* styles for browsers that support display: grid */
      }
    }
    

    (IE는 전혀 @supports을 지원하지 않습니다와 @supports 문 내부에 배치 어떤 스타일을 무시합니다.)

    문제가 @supports으로 해결할 수없는 경우에 당신은이 작업을 수행 할 수 있습니다

    // JS
    
    var ua = window.navigator.userAgent;
    var isIE = /MSIE|Trident/.test(ua);
    
    if ( isIE ) {
      document.documentElement.classList.add('ie')
    }
    
    /* CSS */
    
    .element {
      /* styles that apply everywhere */
    }
    
    .ie .element {
      /* styles that only apply in IE */
    }
    

    (참고 : classList는 JS에 비교적 새로운 내가, 그것은 단지 IE11에서 작동 IE 브라우저에서, 생각 아마도 또한 IE10..)

    프로젝트에서 SCSS (말대꾸)를 사용하는 경우, 이것은하기 위해 단순화 할 수있다 :

    /* SCSS (Sass) */
    
    .element {
      /* styles that apply everywhere */
    
      .ie & {
        /* styles that only apply in IE */
      }
    }
    

    당신은 또한 목록에 마이크로 소프트 에지를 추가하려면 다음을 수행 할 수 있습니다. 가장자리가 IE보다 훨씬 더 능력이 브라우저는 그러나 나는 그것을하지 않는 것이 좋습니다.

    var ua = window.navigator.userAgent;
    var isIE = /MSIE|Trident|Edge\//.test(ua);
    
    if ( isIE ) {
      //IE & Edge specific code goes here
    }
    

  4. 4.이것은 인터넷 익스플로러의 모든 버전에 대해 true를 반환합니다 :

    이것은 인터넷 익스플로러의 모든 버전에 대해 true를 반환합니다 :

    function isIE(userAgent) {
      userAgent = userAgent || navigator.userAgent;
      return userAgent.indexOf("MSIE ") > -1 || userAgent.indexOf("Trident/") > -1 || userAgent.indexOf("Edge/") > -1;
    }
    

    사용자 에이전트 매개 변수는 선택 사항이며 브라우저의 사용자 에이전트에 대한 기본값.


  5. 5.이것은 AngularJS와 팀이 그것을 (V 1.6.5)를 수행하는 방법이다 :

    이것은 AngularJS와 팀이 그것을 (V 1.6.5)를 수행하는 방법이다 :

    var msie, // holds major version number for IE, or NaN if UA is not IE.
    
    // Support: IE 9-11 only
    /**
     * documentMode is an IE-only property
     * http://msdn.microsoft.com/en-us/library/ie/cc196988(v=vs.85).aspx
     */
    msie = window.document.documentMode;
    

    그런 다음 같은 숫자로 사용 곳곳에 여러 줄의 코드가있다

    if (event === 'input' && msie <= 11) return false;
    

    if (enabled && msie < 8) {
    

  6. 6.당신은 사용자 네비게이터를 감지 할 navigator 객체를 사용할 수 있습니다, 당신은 그것을 위해 jQuery를 필요가 없습니다

    당신은 사용자 네비게이터를 감지 할 navigator 객체를 사용할 수 있습니다, 당신은 그것을 위해 jQuery를 필요가 없습니다

    <script type="text/javascript">
    
    if (/MSIE (\d+\.\d+);/.test(navigator.userAgent) || navigator.userAgent.indexOf("Trident/") > -1 ){ 
    
     // Do stuff with Internet-Exploders ... :)
    }
    
    </script>
    

    http://www.javascriptkit.com/javatutors/navigator.shtml


  7. 7.답변 위의 사용; 간단한 및 부울을 반환 응축 :

    답변 위의 사용; 간단한 및 부울을 반환 응축 :

    VAR)는 Isie를 /(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent =;


  8. 8.방법 01 : $ .browser는 jQuery를 버전 1.3에서 사용되지 1.9에서 제거

    방법 01 : $ .browser는 jQuery를 버전 1.3에서 사용되지 1.9에서 제거

    if ( $.browser.msie) {
      alert( "Hello! This is IE." );
    }
    

    방법 02 : 조건부 주석 사용

    <!--[if gte IE 8]>
    <p>You're using a recent version of Internet Explorer.</p>
    <![endif]-->
    
    <!--[if lt IE 7]>
    <p>Hm. You should upgrade your copy of Internet Explorer.</p>
    <![endif]-->
    
    <![if !IE]>
    <p>You're not using Internet Explorer.</p>
    <![endif]>
    

    방법 03 :

     /**
     * Returns the version of Internet Explorer or a -1
     * (indicating the use of another browser).
     */
    function getInternetExplorerVersion()
    {
        var rv = -1; // Return value assumes failure.
    
        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 msg = "You're not using Internet Explorer.";
        var ver = getInternetExplorerVersion();
    
        if ( ver > -1 )
        {
            if ( ver >= 8.0 ) 
                msg = "You're using a recent copy of Internet Explorer."
            else
                msg = "You should upgrade your copy of Internet Explorer.";
        }
    
        alert( msg );
    }
    

    방법 04 : 를 사용하여 자바 스크립트 / 수동 탐지

    /*
         Internet Explorer sniffer code to add class to body tag for IE version.
         Can be removed if your using something like Modernizr.
     */
     var ie = (function ()
     {
    
         var undef,
         v = 3,
             div = document.createElement('div'),
             all = div.getElementsByTagName('i');
    
         while (
         div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i>< ![endif]-->',
         all[0]);
    
         //append class to body for use with browser support
         if (v > 4)
         {
             $('body').addClass('ie' + v);
         }
    
     }());
    

    참조 링크


  9. 9.브라우저가 IE11 이상이라면 나는 단지 그들이있는 거 쓰레기 때문에 잘 확인하고 싶었다.

    브라우저가 IE11 이상이라면 나는 단지 그들이있는 거 쓰레기 때문에 잘 확인하고 싶었다.

    function isCrappyIE() {
        var ua = window.navigator.userAgent;
        var crappyIE = false;
        var msie = ua.indexOf('MSIE ');
        if (msie > 0) {// IE 10 or older => return version number        
            crappyIE = true;
        }
        var trident = ua.indexOf('Trident/');
        if (trident > 0) {// IE 11 => return version number        
            crappyIE = true;
        }
        return crappyIE;
    }   
    
    if(!isCrappyIE()){console.table('not a crappy browser);}
    

  10. 10.

    function detectIE() {
        var ua = window.navigator.userAgent;
        var ie = ua.search(/(MSIE|Trident|Edge)/);
    
        return ie > -1;
    }
    

  11. 11.모더 나이저를 사용하여

    모더 나이저를 사용하여

    Modernizr.addTest('ie', function () {
        var ua = window.navigator.userAgent;
        var msie = ua.indexOf('MSIE ') > 0;
        var ie11 = ua.indexOf('Trident/') > 0;
        var ie12 = ua.indexOf('Edge/') > 0;
        return msie || ie11 || ie12;
    });
    

  12. 12.인터넷 익스플로러 브라우저 인 경우 또는이 정말 짧은 버전은, true를 돌려 :

    인터넷 익스플로러 브라우저 인 경우 또는이 정말 짧은 버전은, true를 돌려 :

    function isIe() {
        return window.navigator.userAgent.indexOf("MSIE ") > 0
            || !!navigator.userAgent.match(/Trident.*rv\:11\./);
    }
    

  13. 13.브라우저가 IE 여부 (전혀 나쁘지 않다 무시 에지,) 인 경우 또 다른 간단한 (아직 사람이 읽을 수있는) 함수는 감지 :

    브라우저가 IE 여부 (전혀 나쁘지 않다 무시 에지,) 인 경우 또 다른 간단한 (아직 사람이 읽을 수있는) 함수는 감지 :

    function isIE() {
      var ua = window.navigator.userAgent;
      var msie = ua.indexOf('MSIE '); // IE 10 or older
      var trident = ua.indexOf('Trident/'); //IE 11
    
      return (msie > 0 || trident > 0);
    }
    

  14. 14.당신이 사용자 에이전트를 사용하지 않으려면, 당신은 또한 단지 브라우저가 IE의 경우 확인하기 위해이 작업을 수행 할 수 있습니다. 주석 코드는 실제로 IE 브라우저에서 실행하고 "사실"로 "false"로 변합니다.

    당신이 사용자 에이전트를 사용하지 않으려면, 당신은 또한 단지 브라우저가 IE의 경우 확인하기 위해이 작업을 수행 할 수 있습니다. 주석 코드는 실제로 IE 브라우저에서 실행하고 "사실"로 "false"로 변합니다.

    var isIE = /*@cc_on!@*/false;
    if(isIE){
        //The browser is IE.
    }else{
        //The browser is NOT IE.
    }   
    

  15. 15.나는이 오래된 질문은 알고 있지만, 경우에 사람이 IE11을 검출 문제를 다시 건너오고 있으며, 여기에 IE의 현재 버전에 대한 작업 솔루션입니다.

    나는이 오래된 질문은 알고 있지만, 경우에 사람이 IE11을 검출 문제를 다시 건너오고 있으며, 여기에 IE의 현재 버전에 대한 작업 솔루션입니다.

    var isIE = false;
    if (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0) {
        isIE = true;   
    }
    

  16. 16.나는이를 사용했습니다

    나는이를 사용했습니다

    function notIE(){
        var ua = window.navigator.userAgent;
        if (ua.indexOf('Edge/') > 0 || 
            ua.indexOf('Trident/') > 0 || 
            ua.indexOf('MSIE ') > 0){
           return false;
        }else{
            return true;                
        }
    }
    

  17. 17.많은 대답은 여기, 그리고 내 입력을 추가하고 싶습니다. IE 11은 정말 엣지가 실제로 있기 때문에 사용자가 (최대 11을 포함) IE 브라우저를 사용하지만 에지 제외되어 있는지 확인하는 쉬운 방법이 필요하다고 (여기에 모든 문제와 불일치 참조) 같은 엉덩이와 직결 인 flexbox 당하고 꽤 좋은.

    많은 대답은 여기, 그리고 내 입력을 추가하고 싶습니다. IE 11은 정말 엣지가 실제로 있기 때문에 사용자가 (최대 11을 포함) IE 브라우저를 사용하지만 에지 제외되어 있는지 확인하는 쉬운 방법이 필요하다고 (여기에 모든 문제와 불일치 참조) 같은 엉덩이와 직결 인 flexbox 당하고 꽤 좋은.

    여기에 주어진 응답에 따라, 나는 당신이 행을 아래로 사용할 수있는 글로벌 부울 변수를 반환하는 간단한 기능을 썼다. 그것은 IE를 확인하는 것은 매우 쉽습니다.

    var isIE;
    (function() {
        var ua = window.navigator.userAgent,
            msie = ua.indexOf('MSIE '),
            trident = ua.indexOf('Trident/');
    
        isIE = (msie > -1 || trident > -1) ? true : false;
    })();
    
    if (isIE) {
        alert("I am an Internet Explorer!");
    }
    

    이 방법은 한 번만 모양을해야 할, 당신은 오히려 각각의 함수 호출에 대한 결과를 가져올 필요없이, 변수에 결과를 저장합니다. (내가 아는 지금까지 당신은 심지어 사용자 에이전트가 DOM 관련되지 않기 때문에이 코드를 실행할 준비가 문서를 기다릴 필요가 없습니다.)


  18. 18.당신이 JQuery와 버전> = 1.9을 사용하는 경우이 시도,

    당신이 JQuery와 버전> = 1.9을 사용하는 경우이 시도,

    var browser;
    jQuery.uaMatch = function (ua) {
        ua = ua.toLowerCase();
    
        var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
            /(webkit)[ \/]([\w.]+)/.exec(ua) ||
            /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
            /(msie) ([\w.]+)/.exec(ua) || 
            ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
           /(Trident)[\/]([\w.]+)/.exec(ua) || [];
    
        return {
            browser: match[1] || "",
            version: match[2] || "0"
        };
    };
    // Don't clobber any existing jQuery.browser in case it's different
    if (!jQuery.browser) {
        matched = jQuery.uaMatch(navigator.userAgent);
        browser = {};
    
        if (matched.browser) {
            browser[matched.browser] = true;
            browser.version = matched.version;
        }
    
        // Chrome is Webkit, but Webkit is also Safari.
        if (browser.chrome) {
            browser.webkit = true;
        } else if (browser.webkit) {
            browser.safari = true;
        }
    
        jQuery.browser = browser;
    }
    

    jQuery를 버전 <1.9 ($ .browser이 jQuery를 1.9에서 제거) 다음 코드를 대신 사용하는 사용하는 경우 :

    $('.myClass').on('click', function (event) {
        if ($.browser.msie) {
            alert($.browser.version);
        }
    });
    

  19. 19.SpiderCode의 솔루션은 IE (11)와 함께 작동하지 않습니다 @ 저는 여기에 특정 기능에 대한 브라우저 감지 기능을 필요로하는 곳에 내가 내 코드에서 이제부터 사용하는 것이 가장 좋은 방법입니다.

    SpiderCode의 솔루션은 IE (11)와 함께 작동하지 않습니다 @ 저는 여기에 특정 기능에 대한 브라우저 감지 기능을 필요로하는 곳에 내가 내 코드에서 이제부터 사용하는 것이 가장 좋은 방법입니다.

    MSIE로 IE11 더 이상 보고서가 변경이 목록에 따르면, 오 탐지를 피하기 위해 의도적이다.

    당신이 정말로 그것을의 IE는 navigator.appName 넷스케이프, 같은 (테스트되지 않은) 반환하는 경우 사용자 에이전트에 트라이던트 / 문자열을 탐지하는 것입니다 알고 싶다면 당신은 무엇을 할 수;

    이 답변에 감사

    function isIE()
    {
      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 );
      }
      else if (navigator.appName == 'Netscape')
      {
        var ua = navigator.userAgent;
        var re  = new RegExp("Trident/.*rv:([0-9]{1,}[\.0-9]{0,})");
        if (re.exec(ua) != null)
          rv = parseFloat( RegExp.$1 );
      }
      return rv == -1 ? false: true;
    }
    

  20. 20.제가 인터넷 검색을하는 동안이 일을의 우아한 방법을 발견 아래 ---

    제가 인터넷 검색을하는 동안이 일을의 우아한 방법을 발견 아래 ---

    / detect IE
    var IEversion = detectIE();
    
    if (IEversion !== false) {
      document.getElementById('result').innerHTML = 'IE ' + IEversion;
    } else {
      document.getElementById('result').innerHTML = 'NOT IE';
    }
    
    // add details to debug result
    document.getElementById('details').innerHTML = window.navigator.userAgent;
    
    /**
     * detect IE
     * returns version of IE or false, if browser is not Internet Explorer
     */
    function detectIE() {
      var ua = window.navigator.userAgent;
    
      // Test values; Uncomment to check result …
    
      // IE 10
      // ua = 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)';
    
      // IE 11
      // ua = 'Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko';
    
      // IE 12 / Spartan
      // ua = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0';
    
      // Edge (IE 12+)
      // ua = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586';
    
      var msie = ua.indexOf('MSIE ');
      if (msie > 0) {
        // IE 10 or older => return version number
        return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
      }
    
      var trident = ua.indexOf('Trident/');
      if (trident > 0) {
        // IE 11 => return version number
        var rv = ua.indexOf('rv:');
        return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
      }
    
      var edge = ua.indexOf('Edge/');
      if (edge > 0) {
        // Edge (IE 12+) => return version number
        return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
      }
    
      // other browser
      return false;
    }
    

  21. 21.문자열 'MSIE'반환 -1하지만 '트라이던트'를 일치 수정 문제에 SpiderCode의 대답으로 업데이트. 그것은 NAN을 반환하는 데 사용,하지만 지금은 IE의 버전 11을 반환합니다.

    문자열 'MSIE'반환 -1하지만 '트라이던트'를 일치 수정 문제에 SpiderCode의 대답으로 업데이트. 그것은 NAN을 반환하는 데 사용,하지만 지금은 IE의 버전 11을 반환합니다.

       function msieversion() {
           var ua = window.navigator.userAgent;
           var msie = ua.indexOf("MSIE ");
           if (msie > -1) {
               return ua.substring(msie + 5, ua.indexOf(".", msie));
           } else if (navigator.userAgent.match(/Trident.*rv\:11\./)) {
               return 11;
           } else {
               return false;
           }
        }
    

  22. 22.Necromancing.

    Necromancing.

    위해서는 몇 가지 특성을 확인, 사용자 에이전트 문자열에 의존하지합니다 :

    if (document.documentMode) 
    {
        console.log('Hello Microsoft IE User!');
    }
    
    if (!document.documentMode && window.msWriteProfilerMark) {
        console.log('Hello Microsoft Edge User!');
    }
    
    if (document.documentMode || window.msWriteProfilerMark) 
    {
        console.log('Hello Microsoft User!');
    }
    
    if (window.msWriteProfilerMark) 
    {
        console.log('Hello Microsoft User in fewer characters!');
    }
    

    또한,이 새로운 Chredge / Edgium (애너하임)는 감지 :

    function isEdg()
    { 
    
        for (var i = 0, u="Microsoft", l =u.length; i < navigator.plugins.length; i++)
        {
            if (navigator.plugins[i].name != null && navigator.plugins[i].name.substr(0, l) === u)
                return true;
        }
    
        return false;
    }
    

    그리고이 검출 크롬 :

    function isChromium()
    { 
    
        for (var i = 0, u="Chromium", l =u.length; i < navigator.plugins.length; i++)
        {
            if (navigator.plugins[i].name != null && navigator.plugins[i].name.substr(0, l) === u)
                return true;
        }
    
        return false;
    }
    

    그리고이 사파리 :

    if(window.safari)
    {
        console.log("Safari, yeah!");
    }
    

  23. 23.당신은 모든 Internet Explorer를 (최신 버전 12 테스트) 감지 할 수 있습니다.

    당신은 모든 Internet Explorer를 (최신 버전 12 테스트) 감지 할 수 있습니다.

    <script>
        var $userAgent = '';
        if(/MSIE/i['test'](navigator['userAgent'])==true||/rv/i['test'](navigator['userAgent'])==true||/Edge/i['test'](navigator['userAgent'])==true){
           $userAgent='ie';
        } else {
           $userAgent='other';
        }
    
        alert($userAgent);
    </script>
    

    여기 https://jsfiddle.net/v7npeLwe/ 참조


  24. 24.

    function msieversion() {
    var ua = window.navigator.userAgent;
    console.log(ua);
    var msie = ua.indexOf("MSIE ");
    
    if (msie > -1 || navigator.userAgent.match(/Trident.*rv:11\./)) { 
        // If Internet Explorer, return version numbe
        // You can do what you want only in IE in here.
        var version_number=parseInt(ua.substring(msie + 5, ua.indexOf(".", msie)));
        if (isNaN(version_number)) {
            var rv_index=ua.indexOf("rv:");
            version_number=parseInt(ua.substring(rv_index+3,ua.indexOf(".",rv_index)));
        }
        console.log(version_number);
    } else {       
        //other browser   
        console.log('otherbrowser');
    }
    }
    

    당신은 콘솔에서 결과를 볼 수, 크롬 검사 사용하십시오.


  25. 25.나는 문서 준비 함수에서이 코드를 배치했는데 그것은 단지 Internet Explorer에서 트리거합니다. 인터넷 익스플로러 11에서 테스트.

    나는 문서 준비 함수에서이 코드를 배치했는데 그것은 단지 Internet Explorer에서 트리거합니다. 인터넷 익스플로러 11에서 테스트.

    var ua = window.navigator.userAgent;
    ms_ie = /MSIE|Trident/.test(ua);
    if ( ms_ie ) {
        //Do internet explorer exclusive behaviour here
    }
    

  26. 26.IE 11 버전 이하이에서만 작동합니다.

    IE 11 버전 이하이에서만 작동합니다.

    var ie_version = parseInt(window.navigator.userAgent.substring(window.navigator.userAgent.indexOf("MSIE ") + 5, window.navigator.userAgent.indexOf(".", window.navigator.userAgent.indexOf("MSIE "))));
    

    을 console.log ( "버전 번호", ie_version);


  27. 27.자바 스크립트 함수는 Internet Explorer 또는 가장자리의 버전을 감지

    자바 스크립트 함수는 Internet Explorer 또는 가장자리의 버전을 감지

    function ieVersion(uaString) {
      uaString = uaString || navigator.userAgent;
      var match = /\b(MSIE |Trident.*?rv:|Edge\/)(\d+)/.exec(uaString);
      if (match) return parseInt(match[2])
    }
    

  28. 28.이 같은 일을보십시오

    이 같은 일을보십시오

    if ($.browser.msie && $.browser.version == 8) {
        //my stuff
    
    }
    

  29. 29.나는 여기에 당신을 도울 것입니다 생각

    나는 여기에 당신을 도울 것입니다 생각

    function checkIsIE() {
        var isIE = false;
        if (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0) {
            isIE = true;
        }
        if (isIE)  // If Internet Explorer, return version number
        {
            kendo.ui.Window.fn._keydown = function (originalFn) {
                var KEY_ESC = 27;
                return function (e) {
                    if (e.which !== KEY_ESC) {
                        originalFn.call(this, e);
                    }
                };
            }(kendo.ui.Window.fn._keydown);
    
            var windowBrowser = $("#windowBrowser").kendoWindow({
                modal: true,
                id: 'dialogBrowser',
                visible: false,
                width: "40%",
                title: "Thông báo",
                scrollable: false,
                resizable: false,
                deactivate: false,
                position: {
                    top: 100,
                    left: '30%'
                }
            }).data('kendoWindow');
            var html = '<br /><div style="width:100%;text-align:center"><p style="color:red;font-weight:bold">Please use the browser below to use the tool</p>';
            html += '<img src="/Scripts/IPTVClearFeePackage_Box/Images/firefox.png"/>';
            html += ' <img src="/Scripts/IPTVClearFeePackage_Box/Images/chrome.png" />';
            html += ' <img src="/Scripts/IPTVClearFeePackage_Box/Images/opera.png" />';
            html += '<hr /><form><input type="button" class="btn btn-danger" value="Đóng trình duyệt" onclick="window.close()"></form><div>';
            windowBrowser.content(html);
            windowBrowser.open();
    
            $("#windowBrowser").parent().find(".k-window-titlebar").remove();
        }
        else  // If another browser, return 0
        {
            return false;
        }
    }
    

  30. 30.당신은 이름, 공급 업체 및 버전 정보를 얻을 $ .browser를 사용할 수 있습니다.

    당신은 이름, 공급 업체 및 버전 정보를 얻을 $ .browser를 사용할 수 있습니다.

    http://api.jquery.com/jQuery.browser/ 참조

  31. from https://stackoverflow.com/questions/19999388/check-if-user-is-using-ie by cc-by-sa and MIT license