繁体   English   中英

通过Javascript检测移动设备

[英]Detect mobile device via Javascript

与此问题相关: 通过Javascript / jQuery检测Android手机

在新版本的android sdk中,本机浏览器不再返回代号“ android”。 navigator.userAgent返回如下内容:

mozilla / 5.0(X11; Linux x86_64)AppleWebkit7534.24(KHTML,例如Gecko)Chrome / 11.0.696.34 Safari7534.24

有什么建议吗? 这来自配备了HTC One S的手机以及当前的Android版本4.1.1。

看到这个问题 您确定没有在桌面模式下查看吗? 股票浏览器和许多其他浏览器具有两种不同的用户代理,具体取决于浏览模式。

永远不要使用浏览器嗅探! 使用功能检测。 有一个名为modernizr的JavaScript库,可以根据用户客户端的功能执行操作。

是的...这可能是因为您的浏览器处于“桌面模式”。

您可能希望在小屏幕上显示时显示页面的某些移动版本,因此您可以尝试执行以下操作:

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<script type="text/javascript">  
  if ((screen.width < 480) || (screen.height < 480)) {    
    location.replace('/m/');
  }  
</script>

您需要浏览器的视口元标记来报告实际的屏幕尺寸。

编辑:
根据这个 ,你可能需要等待一些时间浏览器检查的屏幕尺寸,所以我想这将是更好地使用之前,“追赶”:

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<script type="text/javascript">  
  setTimeout(function() {
               if ((screen.width < 480) || (screen.height < 480)) {    
                 location.replace('/m/');
               }  
             }, 200);
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM