Apple iOS 13之后,iPad iOS 13的Safari中的window.navigator.userAgent与MacOS相同。像这样:
1 | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15 |
1 | 所以不能用之前方式来判断 是否是 ipad 了 |
最佳答案
第一个条件是过时的,并且可以在以前的版本中使用, 而第二个条件适用于iPad OS 13,现在将其标识为“ Mozilla / 5.0(Macintosh; Intel Mac OS X 10_15)AppleWebKit / 605.1.15(KHTML,如Gecko)”,我知道的所有平台检测器均未检测到(目前)既不是移动设备也不是台式机。
因此,由于iPad OS现在称自己为Macintosh,但实际的Mac不支持多点触控,因此该解决方案非常适合检测iPad OS设备,后者是现有的唯一多点触控“ Macintosh”设备。
附言 另外,您可能希望增强此检查以将IE排除在检测到的iOS设备之外
1 | let isIOS = (/iPad|iPhone|iPod/.test(navigator.platform) || |