MW211 EXIT

devlog
JavaScript/ブラウザ判別法
2013年12月30日
使用されているブラウザがどれかを確認する、JavaScript関数は以下の通り。
┌──────────────────────────────────────┐
│function getBrowser() {                                                     │
│    var browser = 'unknown';                                                │
│    var userAgent  = window.navigator.userAgent.toLowerCase();              │
│    var appVersion = window.navigator.appVersion.toLowerCase();             │
│    if (userAgent.indexOf('firefox') != -1) {                               │
│        browser = 'firefox';                                                │
│    } else if (userAgent.indexOf('chrome') != -1) {                         │
│        browser = 'chrome';                                                 │
│    } else if (userAgent.indexOf('safari') != -1) {                         │
│        browser = 'safari';                                                 │
│    } else if (userAgent.indexOf('opera') != -1) {                          │
│        browser = 'opera';                                                  │
│    } else if (userAgent.indexOf('msie') != -1) {                           │
│        if (appVersion.indexOf('msie 6.') != -1) {                          │
│            browser = 'ie6';                                                │
│        } else if (appVersion.indexOf('msie 7.') != -1) {                   │
│            browser = 'ie7';                                                │
│        } else if (appVersion.indexOf('msie 8.') != -1) {                   │
│            browser = 'ie8';                                                │
│        } else if (appVersion.indexOf('msie 9.') != -1) {                   │
│            browser = 'ie9';                                                │
│        } else if (appVersion.indexOf('msie 10.') != -1) {                  │
│            browser = 'ie10';                                               │
│        } else {                                                            │
│            browser = 'ie';                                                 │
│        }                                                                   │
│    } else if (userAgent.indexOf('trident/7') != -1) {                      │
│        browser = 'ie11';                                                   │
│    }                                                                       │
│    return browser;                                                         │
│};                                                                          │
└──────────────────────────────────────┘
昔は「document.all」があること(「if (document.all)」)で、
IEを判別したりしていたが、「IE11」から「document.all」がなくなったので
その手法は使えなくなってしまった。
ついでに言えば、「IE11」から「msie」のユーザエージェント名もなくなっている。
分類:JavaScript