我将如何确定用户持有的查看器(将是 iOS)的设备?在 JavaScript 中?IE iPad、iPod、iPhone 等。
非常感谢!干杯
编辑:我想回显设备名称,IE ipad IE ipod IE iphone ... 等
编辑:添加了 PHP 标记,因为我非常喜欢使用 PHP 的一些答案。
我将如何确定用户持有的查看器(将是 iOS)的设备?在 JavaScript 中?IE iPad、iPod、iPhone 等。
非常感谢!干杯
编辑:我想回显设备名称,IE ipad IE ipod IE iphone ... 等
编辑:添加了 PHP 标记,因为我非常喜欢使用 PHP 的一些答案。
jsFiddle DEMO ← 使用您的移动设备访问!
在 URL 地址栏中删除/show/
以访问 jsFiddle 编辑页面。
http://detectmobilebrowsers.com/
上述开源方法DetectMobileBrowers插件,包含您需要的各种格式的源代码,以快速识别浏览器和移动设备,包括 iphone / ipod。
上面的主页也是一个现场演示,用于检查您使用的设备/用户代理。
此外,如果您确实使用该脚本注释 Boolean true
or false
on the variable is to be used(即,!!
在变量名之前使用来测试false
)。
编辑:支持的设备部分包含检测到的所有设备和用户代理的可下载存档。提到有一个模组包括平板电脑支持(例如,iPad 平板电脑)。
示例清单:
apple_generic_iphoneos_mmsclient
apple_ipad_ver1
apple_ipad_ver1_sub42
apple_ipad_ver1_sub43
apple_ipad_ver1_sub431
apple_ipad_ver1_sub5312110
apple_ipad_ver1_subiprod
apple_ipad_ver1_subsimulator
apple_iphone_coremedia_ver1
apple_iphone_coremedia_ver1_1_5
apple_iphone_coremedia_ver1_sub5a347
apple_iphone_coremedia_ver1_sub5b108
apple_iphone_coremedia_ver1_sub5f136
apple_iphone_coremedia_ver1_sub5f137
apple_iphone_coremedia_ver2_1_1
apple_iphone_coremedia_ver2_2
apple_iphone_coremedia_ver2_2_1
apple_iphone_coremedia_ver2_2a
apple_iphone_emulator_ver2
apple_iphone_emulator_ver2_1
apple_iphone_emulator_ver2_2_1
apple_iphone_emulator_ver2_sub52520
apple_iphone_emulator_ver2_sub52520_5f135
apple_iphone_emulator_ver3
apple_iphone_emulator_ver3_1
apple_iphone_emulator_ver4
apple_iphone_emulator_ver5
apple_iphone_ver1
apple_iphone_ver1_china
apple_iphone_ver1_os201
apple_iphone_ver1_somesdk
apple_iphone_ver1_somesdk_subenus
apple_iphone_ver1_sub1a542a
apple_iphone_ver1_sub1c25
apple_iphone_ver1_sub1c28
apple_iphone_ver1_sub3a109a_dadk
apple_iphone_ver1_sub3a109a_plpl
apple_iphone_ver1_sub3a109a_svse
apple_iphone_ver1_sub3a109a_zhcn
apple_iphone_ver1_sub3b48a
apple_iphone_ver1_sub3b48b
apple_iphone_ver1_sub3b48b_nlnl
apple_iphone_ver1_sub3b48b_ptpt
apple_iphone_ver1_sub3b48b_trtr
apple_iphone_ver1_sub3b48b_zhtw
apple_iphone_ver1_suba543
apple_iphone_ver1_suboperamini5
apple_iphone_ver2
apple_iphone_ver2_0_2
apple_iphone_ver2_0_2_subua
apple_iphone_ver2_1
apple_iphone_ver2_1_1
apple_iphone_ver2_1_sub525181
apple_iphone_ver2_1_sub525181_subua
apple_iphone_ver2_1_subcydia
apple_iphone_ver2_2
apple_iphone_ver2_2_1
apple_iphone_ver2_2_1_svse
apple_iphone_ver2_2_sub525181
apple_iphone_ver2_2_sub5g77
apple_iphone_ver2_2_subcydia
apple_iphone_ver2_2_subua
apple_iphone_ver2_sub525181
apple_iphone_ver2_sub5a347
apple_iphone_ver2_sub5b108
apple_iphone_ver3
apple_iphone_ver3_0_1
apple_iphone_ver3_1
apple_iphone_ver3_1_0
apple_iphone_ver3_1_0_sub52816
apple_iphone_ver3_1_1
apple_iphone_ver3_1_2
apple_iphone_ver3_1_2_svse
apple_iphone_ver3_1_3
apple_iphone_ver3_1_3_subenus
apple_iphone_ver3_1_sub7c116a
apple_iphone_ver3_sub7a259g
apple_iphone_ver3_sub7a312g
apple_iphone_ver3_sub7a341
apple_iphone_ver3_sub7a341_enus
apple_iphone_ver4
apple_iphone_ver4_1
apple_iphone_ver4_1_sub8b113
apple_iphone_ver4_1_sub8b117
apple_iphone_ver4_1_sub8b117_cydia
apple_iphone_ver4_1_subgoog_bot
apple_iphone_ver4_2
apple_iphone_ver4_2_1
apple_iphone_ver4_2_5
apple_iphone_ver4_2_6
apple_iphone_ver4_2_7
apple_iphone_ver4_2_8
apple_iphone_ver4_3
apple_iphone_ver4_3_1
apple_iphone_ver4_3_2
apple_iphone_ver4_3_3
apple_iphone_ver4_3_4
apple_iphone_ver4_3_5
apple_iphone_ver4_sub401
apple_iphone_ver4_sub405
apple_iphone_ver4_sub405_eses
apple_iphone_ver4_sub533179
apple_iphone_ver5
apple_iphone_ver5_1
apple_iphone_ver5_subua
apple_ipod_touch_ver1
apple_ipod_touch_ver1_fr
apple_ipod_touch_ver1_no_u
apple_ipod_touch_ver1_os201
apple_ipod_touch_ver1_os211
apple_ipod_touch_ver1_sub3b48b_dadk
apple_ipod_touch_ver1_sub3b48b_fr
apple_ipod_touch_ver1_sub3b48b_jajp
apple_ipod_touch_ver1_sub3b48b_kokr
apple_ipod_touch_ver1_sub3b48b_nlnl
apple_ipod_touch_ver1_sub3b48b_svse
apple_ipod_touch_ver1_sub3b48b_zhcn
apple_ipod_touch_ver1_sub3b48b_zhtw
apple_ipod_touch_ver1_sub4193
apple_ipod_touch_ver1_sub4a102
apple_ipod_touch_ver1_sub4a93_plpl
apple_ipod_touch_ver1_sub4a93_ptpt
apple_ipod_touch_ver1_sub4b1
apple_ipod_touch_ver1_subenus_sub5f137
apple_ipod_touch_ver2
apple_ipod_touch_ver2_1
apple_ipod_touch_ver2_1_engb
apple_ipod_touch_ver2_1_subenus_sub5f138
apple_ipod_touch_ver2_2
apple_ipod_touch_ver2_2_1
apple_ipod_touch_ver2_2_1_sub5h11
apple_ipod_touch_ver2_2_1_sub5h11a
apple_ipod_touch_ver2_2_1_subengb
apple_ipod_touch_ver2_2_sub5g77a
apple_ipod_touch_ver2_sub525181
apple_ipod_touch_ver2_sub5a347
apple_ipod_touch_ver2_sub5c1
apple_ipod_touch_ver3
apple_ipod_touch_ver3_1
apple_ipod_touch_ver3_1_1
apple_ipod_touch_ver3_1_1_subua
apple_ipod_touch_ver3_1_2
apple_ipod_touch_ver3_1_2_sub7d11
apple_ipod_touch_ver3_1_2_subua
apple_ipod_touch_ver3_1_3
apple_ipod_touch_ver3_1_3_subua
apple_ipod_touch_ver3_1_subua
apple_ipod_touch_ver3_subua
apple_ipod_touch_ver4
apple_ipod_touch_ver4_1
apple_ipod_touch_ver4_1_subua
apple_ipod_touch_ver4_2_1
apple_ipod_touch_ver4_2_1_subua
apple_ipod_touch_ver4_3
apple_ipod_touch_ver4_3_1
apple_ipod_touch_ver4_3_1_subua
apple_ipod_touch_ver4_3_2
apple_ipod_touch_ver4_3_2_subua
apple_ipod_touch_ver4_3_3
apple_ipod_touch_ver4_3_3_subua
apple_ipod_touch_ver4_3_4
apple_ipod_touch_ver4_3_5
apple_ipod_touch_ver4_3_subua
apple_ipod_touch_ver4_sub402
apple_ipod_touch_ver4_sub402ua
apple_ipod_touch_ver4_subua
apple_ipod_touch_ver5
apple_ipod_ver1
接受答案状态后:
作为DetectMobileBrowsers插件的替代品, inhan 为 MobileESP 项目在此页面上提供的另一个 SO 答案做了类似的事情。对于此问题的未来访问者,请检查它们。干杯!
这是我知道的。前段时间我发现了 MobileESP 项目(这里是下载页面),一个 Javascript 解决方案。我发现它的时候看起来不错,所以我保留了一份,但我还没有使用它,所以我不能说太多。
服务器端(我相信它更可靠)我已经在一些项目中使用了Mobile-Detect类 (PHP)。它看起来是最准确和最详细的选项。
希望有帮助。
如果您正在寻找简单的 Javascript 用户代理检测,这应该可以完成工作。
<script type="text/javascript">
if(navigator.userAgent.match(/iPod/i))
//Found an iPod!
else if(navigator.userAgent.match(/iPad/i))
//Found an iPad!
else if(navigator.userAgent.match(/iPhone/i))
//Found an iPhone!
</script>