使用UserAgent检测浏览器

时间:2019-01-18 11:55:51

标签: javascript typescript google-chrome browser

我想用TypeScript / JavaScript检查活动浏览器是否是Chrome。

我以前使用过

var isChrome = !!(<any>window).chrome && !!(<any>window).chrome.webstore;

但这似乎不再有效。什么是新方法?由于不良的经验,我不希望使用UserAgent。

3 个答案:

答案 0 :(得分:1)

您可以尝试使用Bowser库:

console.log("You are using " + bowser.name + " version: " + bowser.version + " os: " + bowser.osname);

// Check for Chrome 20+
const isChrome = bowser.check({chrome: "20"}, true);
console.log("Chrome: ", isChrome);
<script src="https://cdnjs.cloudflare.com/ajax/libs/bowser/1.9.4/bowser.min.js"></script>

答案 1 :(得分:1)

尝试使用导航器全局变量:const isChrome = /chrome/.test( navigator.userAgent.toLowerCase() );

答案 2 :(得分:1)

类似的问题已经回答here, 代码应如下所示:

// Chrome 1 - 71
var isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);

谢谢, 奥利弗