是否可以仅通过 HTML/JavaScript 从 Internet Explorer 中呈现的页面打开 Microsoft Edge?

Is it possible to open Microsoft Edge from a page rendered in Internet Explorer via just HTML/JavaScript?

Windows 10 附带现代 Microsoft Edge 浏览器和旧版 Internet Explorer 11。

根据分析,我怀疑我的 Windows 10 个用户中有一些人使用 IE11,并且可能不知道有 Edge 浏览器。

如果用户在 Win10 上使用 IE11,是否可以在 HTML 中创建一个在 Edge 中打开网站的 link?

由于 microsoft-edge: 协议,可以在 Edge Spartan 中打开 URL。这适用于 Windows 10 上的任何浏览器。例如:

<a href="microsoft-edge:https://www.cnn.com">CNN</a>

但是请注意,这(目前?)不适用于 Edge Chromium。

检查浏览器是否为 Windows 10 上的 IE11 可以执行以下示例:

if (document.documentMode === 11 && navigator.userAgent.indexOf('Windows NT 10.0') > -1) {
    ...
}

如果你想为当前页面创建一个 Edge link(没有硬编码),你可以使用 JavaScript:

myAnchor.href = 'microsoft-edge:' + document.URL;

演示:https://jg-testpage.github.io/ie11/open-in-edge.html?foo=bar&baz=quux