【问题标题】:How detect Safari browser ONLY on desktop?如何仅在桌面上检测 Safari 浏览器?
【发布时间】:2019-02-11 18:05:27
【问题描述】:

如何仅在桌面上检测Safari 浏览器?
我只想知道用户何时使用桌面设备而不是移动设备。

var ua = navigator.userAgent.toLowerCase(); 
if (ua.indexOf('safari') != -1) { 
    //find safari
}

我注意到桌面 Safari 不支持 input[type=date] 但移动 safari(名称是 webkit ?)是的。 所以对我来说,了解用户何时在桌面上很重要。

非常感谢,对不起我的英语。

【问题讨论】:

  • @StefanBlamberg 如果在“您的问题”中是如何使用 jquery 检测移动设备,而在我的问题中如何仅检测桌面 safari 时,如何复制?!
  • 我有点困惑,为什么你不能使用那里提供的答案来确保它不是移动版的 safari 版本?例如if (/Mobi|Android/i.test(navigator.userAgent)) { // mobile! }stackoverflow.com/a/24600597/5843525
  • 您是否只想针对 Safari 浏览器?移动与桌面?您期待 Windows 和 Mac 用户,还是只有一个或其他用户?
  • 对我来说只知道是否是桌面 safari 是很重要的,因为我有一个输入类型 date 并且 safari(在桌面上)不支持它caniuse.com/#feat=input-datetime

标签: javascript mobile safari mobile-safari navigator


【解决方案1】:
const uA = navigator.userAgent;
const vendor = navigator.vendor;
if (/Safari/i.test(uA) && /Apple Computer/.test(vendor) && !/Mobi|Android/i.test(uA)) {
  //Desktop Safari
}

【讨论】:

猜你喜欢
  • 2018-03-21
  • 2011-12-18
  • 2011-12-25
  • 2015-07-25
  • 1970-01-01
  • 1970-01-01
  • 2023-01-18
  • 2012-09-19
相关资源
最近更新 更多