在不使用用户代理的情况下检测javascript中的iPad

detecting iPad in javascript without using user-agent?

本文关键字:检测 javascript 中的 iPad 情况下 用户代理      更新时间:2023-09-26

我有一个javascript代码,我不希望它在iPad上运行
是否有一种方法可以使用javaScript检测iPad,而无需使用用户代理

比如说,使用设备宽度,就像我们对css所做的那样。

@media only screen and (device-width: 768px) {/* For general iPad layouts */}


提前感谢,
R

您可以使用媒体查询,这有点麻烦,但您可以将样式属性设置为预定义元素(例如您的身体),用javascript读取并响应它。

HTML头

@media only screen and (device-width: 768px) { #tester { border-color: #f00; } }

HTML正文

<body>
<div id="tester" style="display: none"></div>

JS-

if(document.getElementById('tester').style.borderColor == '#f00') {
   // iPad
}

有点生气,但如果你真的想这样做,你可以把它整理一下;不过,我确实更喜欢检查用户代理;)

navigator.platform是否算作用户代理字符串?您可以使用:

var is_iPad = navigator.platform.indexOf("iPad") != -1 ;