Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检测iPad Safari或Zoom_Javascript_Css_Ipad_Mobile Safari - Fatal编程技术网

Javascript 检测iPad Safari或Zoom

Javascript 检测iPad Safari或Zoom,javascript,css,ipad,mobile-safari,Javascript,Css,Ipad,Mobile Safari,如果我使用以下方法检测iPad Safari用户,如果将来我尝试检测摩托罗拉Xoom或其他平板电脑用户,它们可能具有类似的宽度,它会起作用吗 <link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px)" href="ipad.css"> 我的意思是,如何准确识别其他平板电脑并使用xoom.css或othertable.css 我知道用户代理的方法

如果我使用以下方法检测iPad Safari用户,如果将来我尝试检测摩托罗拉Xoom或其他平板电脑用户,它们可能具有类似的宽度,它会起作用吗

<link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px)" href="ipad.css">  

我的意思是,如何准确识别其他平板电脑并使用xoom.css或othertable.css


我知道用户代理的方法,但希望避免这种情况。请让我知道是否可以只使用媒体查询来实现?

不,您无法根据媒体查询来判断正在使用的特定设备(您不需要知道,因为它们都在相同的标准上聚合)

我们正在开始使用Formfactor检测库进行开发,例如-注意,我创建了这个

理论上,使用相同的语义HTML,您可以将CSS和Javascript专门用于给定类别的设备(智能手机、平板电脑、桌面等),同时还可以通过媒体查询了解对单个设备配置文件的响应设计


至少好的是,您可以指定自己的检测算法,这样您就可以检测同一类设备的不同类型(即iPad或Xoom)。在本例中,我们选择通过userAgent检查来实现这一点。为什么?因为根据formfactor或设备类型,您可能希望提供优化的体验。

那么,最佳方法是什么?我知道这可以通过用户代理完成,但听说这不是检测的最佳方式……你认为呢?不要尝试检测特定的设备,只需寻找功能,否则你将无休止地尝试支持发布的每一个新设备或设备版本。功能到底意味着什么?我正试图识别设备/浏览器,因为iPad Safari将与Xoom上的Opera大不相同。对吗?错。两者都实现HTML解析器和CSS引擎。那么你的意思是说,无论在iPad Safari还是Xoom Opera上查看,页面的呈现都是相同的?在其他地方有没有提到这一点?是否可以通过一些功能检测来区分台式机/ipad/其他平板电脑(如Xoom)?