![]() |
1
18
一个简单的谷歌搜索给我找到了你想要的答案: http://forum.piwik.org/read.php?3,125732
因此,您应该匹配:
|
![]() |
2
7
根据 this answer :
|
![]() |
3
4
Microsoft Edge UA字符串: Mozilla/5.0(Windows NT 10.0)AppleWebKit/537.36(KHTML,类似壁虎)Chrome/42.0.2311.135 Safari/537.36Edge/12.10136 I detail why in this blog post. Neowin最近报道称,微软针对Windows 10的新浏览器Spartan使用Chrome UA字符串, Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/39.02171.71 Safari/537.36 Edge/12.0。 这是故意的。 您还会注意到,整个字符串以Edge/12.0结尾,而Chrome没有这样做。 我要指出的是,这与微软在IE 11上所做的并没有什么大的不同。正如本文所解释的,IE 11在Windows 8上的版本是:Mozilla/5.0(Windows NT 6.3;Trident/7.0;rv:11.0),就像Gecko。 什么是用户代理嗅探? 通常,web开发人员会通过UA嗅探浏览器检测。Mozilla在他们的博客上解释得很好: 向不同的浏览器提供不同的网页或服务通常是一个坏主意。网络意味着每个人都可以访问,无论他们使用的是哪种浏览器或设备。有一些方法可以开发您的网站,以根据功能的可用性逐步增强自身,而不是针对特定的浏览器。 Hereâs a great article explaining the history of the User Agent. 通常,懒惰的开发人员只会嗅探UA字符串,并根据他们认为观众使用的浏览器禁用网站上的内容。InternetExplorer8是开发人员的常见问题,因此他们会经常检查用户是否使用任何版本的IE,并禁用功能。 The Edge team details this even deeper on their blog. 所有用户代理字符串都包含有关其他浏览器的更多信息,而不是您正在使用的实际浏览器,不仅仅是令牌,还有有意义的版本号。 Internet Explorer 11s UA字符串: Mozilla/5.0(Windows NT 6.3;Trident/7.0;rv:11.0)类似Gecko Microsoft Edge UA字符串: Mozilla/5.0(Windows NT 10.0)AppleWebKit/537.36(KHTML,类似壁虎)Chrome/42.0.2311.135 Safari/537.36Edge/12.10136 Patrick H.Lauke在W3C讨论中恰当地将userAgent属性描述为一组不断增长的谎言。(或者更确切地说,这是一种平衡行为,即添加足够多的遗留关键字,不会立即让旧的UA嗅探代码崩溃,同时仍试图传递一点点实际有用和准确的信息。) 我们建议web开发人员尽可能避免UA嗅探;现代web平台功能几乎都可以通过简单的方式检测到。在过去的一年中,我们看到了一些UA嗅探站点,这些站点被更新为检测Microsoft Edge,只为其提供了一个遗留的IE11代码路径。这不是最好的方法,因为Microsoft Edge匹配WebKit行为,而不是IE11行为(任何Edge WebKit差异都是有兴趣修复的bug)。 根据我们的经验,Microsoft Edge在这些站点的WebKit代码路径上运行得最好。此外,随着互联网在各种各样的设备上变得可用,请假设未知的浏览器是好的,请不要将您的网站限制为仅在一小部分当前已知的浏览器上工作。如果你这样做,你的网站几乎肯定会在未来崩溃。 结论 通过展示Chrome UA字符串,我们可以解决这些开发人员正在使用的黑客,以向用户展示最佳体验。 |
|
4
3
另一个基于特征检测的选项。
|
|
5
1
在UA字符串中查找“Edge”。 虽然在市场营销人员的心目中,世界是完美的,但实际上,浏览器存在多年未修复的bug,而且情况总是如此。 在我的案例中,需要我测试Edge与Chrome的问题是Spartan/Edge正确渲染的Chrome下拉高度错误。微软在这方面没有什么可修复的,谷歌一年多来一直忽略这个bug(它在旧版本的Chrome中正确渲染)。 |
![]() |
F. Ception · 重新加载页面后保存浏览器控制台变量 6 年前 |
![]() |
Ibrahim D. · PAC文件能否包含查询字符串? 6 年前 |
![]() |
Jas · Chrome未连接到Java HTTP服务器 6 年前 |
![]() |
user856232 · 浏览器文件夹上载 6 年前 |
![]() |
NtFreX · 检查firefox中是否临时禁用了浏览器通知 6 年前 |
![]() |
BarriaKarl · 在网页上运行基于java(FX)的应用程序 6 年前 |
![]() |
Detuned · Instabot如何在浏览器中执行操作? 6 年前 |