javascript 如何检测客户端的网页浏览器是维瓦尔第?

anhgbhbe  于 2023-02-02  发布在  Java
关注(0)|答案(3)|浏览(98)

我试过从javascript-navigator.userAgent获取浏览器信息,但找不到任何与“Vivaldi”相关的字符串。
请帮助建议是否有任何其他编程方法或javascript可以用来检测维瓦尔第浏览器?

tcomlyy6

tcomlyy61#

JavaScript中正确的语法是navigator.userAgent

brc7rcf0

brc7rcf02#

你可以检查窗口大小,但它可能是不正确的。维瓦尔第有自己的侧边栏和底部栏,其他人没有。但记住,用户可以改变窗口大小,以防止检测。

nom7f22z

nom7f22z3#

根据Vivaldi的说法,为了获得更好的用户体验,userAgent将不会有Vivaldi,并且除了少数几个已知的网站外,它将在所有网站上模仿Chrome。
对于Vivaldi的下一个版本,我们决定尝试一些不同的东西。我们目前的方法的问题是,随着网络几乎是无限的,我们不可能发现所有的网站谁设置了对我们的封锁。因此,维护一个网站的名单,我们提出了一个非Vivaldi用户代理是困难的。相反,我们将尝试做相反的事情。2对于少数我们知道标签Vivaldi(和我们的版本号)被负责任地使用的站点,我们将展示我们的完整用户代理。3这些站点是我们自己的和少数有趣的替代搜索引擎:duckduckgo.com、ecosia.org、qwant.com和startpage.com。其他每个站点都将获得看起来与Chrome相同的用户代理。
源代码:https://vivaldi.com/blog/user-agent-changes/
既然你还没有提到你的使用案例,假设你正在构建网站,最好的解决方案是做大家都在做的事情。我建议构建不受浏览器和设备限制的网站,但要对分辨率和功能支持做出响应。现在几乎所有的浏览器都运行在Chromium上。Safari和Firefox除外(据我所知)。所以它们都将全面一致地工作。对于任何给定的特性,人们总是可以参考W3C或MDNDOCS以获得兼容性并围绕其构建。
浏览器检测也不是很可靠,因为有欺骗信息的扩展。像这个模仿电视代理的扩展,这样就可以在上面运行youtube控制台版本。
另一方面,我再次不知道你的使用案例,一个人可能会受益于平台检测超过浏览器检测,如迎合移动的和电视用户。即使这样,如果你有一个网站的响应足够的平台成为非必要的信息。

相关问题