如何检测用户浏览器客户端
How can I detect the users browser client side?
我知道这是一种糟糕的做法,特征识别应该是构建网站的方法。然而,这不是我的用例。
我有不同版本的浏览器扩展,我想根据他们当前的浏览器更改下载按钮。
我已经尝试过使用navigator.userAgent
,事实证明它非常无用,因为大多数浏览器都设置了所有流行的用户代理。例如chrome就是这样。
navigator.userAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"
我看到很多网站的下载按钮上都有这个功能。这是如何正确完成的?
编辑:我现在已经了解了为什么"Mozzila/X.X"位于userAgent字符串开头的历史。对误解表示歉意。
您可以通过多种方式检测浏览器。
对于Chrome,除了在navigator.userAgent
:上生成正则表达式之外
var isChrome = /Chrome/.test(navigator.userAgent);
你也可以在上进行检查
var isChrome = !!window.chrome && !!window.chrome.webstore;
我建议你看看这个答案,了解更多的细节。
您还应该考虑使用Modernizr.js进行浏览器检测。
相关文章:
- javascript跨浏览器确定用户是否滚动到页面底部
- 我们如何在互联网断开连接或用户关闭选项卡/浏览器时调用注销servlet
- 如何在用户按下F5键或单击浏览器时显示自定义的fancybox's后退/关闭按钮
- javascript移动交叉浏览器确定用户是否滚动到页面底部
- 在用户关闭/更改移动浏览器选项卡之前进行检测
- 如何向特定用户/浏览器发送浏览器通知
- 每个用户/浏览器会话只加载一次Javascript
- 如何检测用户浏览器客户端
- 检测用户浏览器高度是否>=页面正文高度
- 如何在用户不刷新浏览器的情况下不断地向用户浏览器显示更新
- 当窗口最小化时,提醒用户浏览器内事件——而不是html5通知
- 如何在用户浏览器禁用javascript时阻止用户提交表单
- 检测用户浏览器是否关闭浏览器
- Jquery检查用户浏览器类型
- 当用户浏览器缩放时,如何处理覆盖
- Javascript在用户浏览器中保存表单值以防会话过期
- 最好最完整的用户浏览器"指纹"尽可能多地识别来访者的信息
- 如何使用javascript查找用户浏览器的最大窗口宽度和当前
- 页面刷新后,Gapi 登录状态不会保留在用户浏览器中
- 如何检测用户浏览器的视觉高度