@hoyt.jerde На бэкенде обычно для этого используют заголовок User-Agent и по нему определяют браузере. Как вариант в Javascript использовать глобальный объект window:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
// Opera 8.0+ var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0; // Firefox 1.0+ var isFirefox = typeof InstallTrigger !== 'undefined'; // Safari 3.0+ "[object HTMLElementConstructor]" var isSafari = /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || (typeof safari !== 'undefined' && window['safari'].pushNotification)); // Internet Explorer 6-11 var isIE = /*@cc_on!@*/false || !!document.documentMode; // Edge 20+ var isEdge = !isIE && !!window.StyleMedia; // Chrome 1 - 79 var isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime); // Edge основываясь на Chromium движок var isEdgeChromium = isChrome && (navigator.userAgent.indexOf("Edg") != -1); // Blink var isBlink = (isChrome || isOpera) && !!window.CSS; |
На самом деле на Javascript уже множество написанных библиотек готовых и Вы можете использовать одну из них или использовтаь метод описанный вверху и адаптировав его под нужный браузер.
@hoyt.jerde
Вы можете использовать объект navigator
для определения браузера в JavaScript. Например:
1 2 3 4 5 6 7 8 9 10 11 |
if (navigator.userAgent.indexOf('Chrome') !== -1) { console.log('Google Chrome'); } else if (navigator.userAgent.indexOf('Firefox') !== -1) { console.log('Mozilla Firefox'); } else if (navigator.userAgent.indexOf('Safari') !== -1) { console.log('Apple Safari'); } else if (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0) { console.log('Internet Explorer'); } else { console.log('Other'); } |
Обратите внимание, что этот код может не работать для некоторых браузеров, поэтому рекомендуется использовать библиотеку, такую как bowser, для более точной идентификации браузера.
1 2 |
const browser = bowser.getParser(navigator.userAgent); console.log(browser.getBrowserName()); |