首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Javascript中检测Microsoft Chromium Edge (chredge、edgium)

如何在Javascript中检测Microsoft Chromium Edge (chredge、edgium)
EN

Stack Overflow用户
提问于 2019-05-29 20:04:23
回答 3查看 11.7K关注 0票数 10

‘'Edge 75’将是(is?)第一个基于Chromium的Edge浏览器。如何检查此浏览器是否为Chrome上的Edge?

(我真正想知道的是,浏览器是否完全支持data-uri's - https://caniuse.com/#feat=datauri -所以特征检测会更好。如果你知道一种方法,我可以改变问题)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-05-29 21:38:42

您可以使用window.navigator userAgent检查浏览器是微软Chromium Edge还是Chrome。

代码如下:

代码语言:javascript
运行
复制
<script>
    var browser = (function (agent) {
        switch (true) {
            case agent.indexOf("edge") > -1: return "edge";
            case agent.indexOf("edg/") > -1: return "chromium based edge (dev or canary)"; // Match also / to avoid matching for the older Edge
            case agent.indexOf("opr") > -1 && !!window.opr: return "opera";
            case agent.indexOf("chrome") > -1 && !!window.chrome: return "chrome";
            case agent.indexOf("trident") > -1: return "ie";
            case agent.indexOf("firefox") > -1: return "firefox";
            case agent.indexOf("safari") > -1: return "safari";
            default: return "other";
        }
    })(window.navigator.userAgent.toLowerCase());
    document.body.innerHTML = window.navigator.userAgent.toLowerCase() + "<br>" + browser;
</script>

Chrome浏览器userAgent:

applewebkit/537.36 (

,像壁虎一样) chrome/74.0.3729.169 /537.36

边缘浏览器userAgent:

safari mozilla/5.0 (windows nt 10.0;win64;x64) applewebkit/537.36 (khtml,像壁虎一样)

/64.0.3282.140 safari/537.36 edge/18.17763

微软Chromium Edge Dev userAgent:

applewebkit/537.36 (

,像壁虎一样) chrome/76.0.3800.0 /537.36 edg/76.0.167.1

微软Chromium Edge Canary userAgent:

applewebkit/537.36 (

,像壁虎一样) chrome/76.0.3800.0 /537.36 edg/76.0.167.1

正如我们所看到的,微软的Chromium Edge userAgent包含"edg“关键字,我们可以用它来检测浏览器是Chromium Edge userAgent还是Chrome浏览器。

票数 24
EN

Stack Overflow用户

发布于 2020-05-15 23:23:27

使用CanIUse,最通用的功能是,在旧的Edge上不支持的(使用EdgeHtml引擎),但在Edge Chromium和其他任何地方(除了IE)支持,就是。这个属性的优点是在其他所有东西中都已经支持了很长时间。

(这是我能找到的唯一一个可以覆盖所有其他浏览器的浏览器,包括Opera Mini;如果你不担心这一点,还有plenty of others。)

因此,您可以使用简单的特征检测来查看您是否在旧边缘(或IE)上-

代码语言:javascript
运行
复制
var isOldEdgeOrIE = !('reversed' in document.createElement('ol'));
票数 8
EN

Stack Overflow用户

发布于 2020-10-19 18:40:44

由于我从另一个方面发现了这个问题,如何实际检查是否使用了前铬边缘,我找到了以下解决方案(包括IE检查):

代码语言:javascript
运行
复制
  // Edge < 18
  if (window.navigator.userAgent.indexOf('Edge') !== -1) {
    return true;
  }
  // IE 11
  if (window.document.documentMode) {
    return true;
  }
  // IE 10
  if (navigator.appVersion.indexOf('MSIE 10') !== -1) {
    return true;
  }
  return false;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56360225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档