V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xhslyf
V2EX  ›  编程

web 前端有什么好方法区分 Android 平板和手机吗?

  •  
  •   xhslyf · 2014-10-28 11:28:26 +08:00 · 4667 次点击
    这是一个创建于 3461 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前想到的方式是用 window.screen.width/window.devicePixelRatio >= 600 则认为是平板,否则是手机。
    因为手边没有足够多的机型做测试,所以问问大家一般是如何判断的?
    8 条回复    2015-08-27 12:41:56 +08:00
    lincanbin
        1
    lincanbin  
       2014-10-28 11:49:24 +08:00
    Android手机的UA里会同时包含"Android"和"Mobile"两个字符串,而Android平板只包含Android,不包含Mobile,你可以把UA拉出来判断。
    learnshare
        3
    learnshare  
       2014-10-28 11:56:26 +08:00
    屏幕大小是不可用的,UA 里边的关键字也不一定可靠。

    最好的方式是把页面做成响应式,只针对不同大小的屏幕更改布局,设备爱啥啥。
    wdlth
        4
    wdlth  
       2014-10-28 12:05:18 +08:00
    一般是做响应式布局,由浏览器自己选择。
    xhslyf
        5
    xhslyf  
    OP
       2014-10-28 13:14:18 +08:00
    @lincanbin
    @bitwing
    谢谢,又学到一种方式。


    @learnshare
    @wdlth
    是一个页面小游戏,主要是图片清晰度问题,手机用户一套小图,平板用户一套大图。
    learnshare
        6
    learnshare  
       2014-10-28 13:23:25 +08:00
    @xhslyf 图片这个问题,只能依赖屏幕分辨率,并不是手机/平板的区别,手机也有超高分辨率的
    lincanbin
        7
    lincanbin  
       2014-10-28 14:10:01 +08:00
    @learnshare 手机720P或者1080P,网页适配时也是按320px / 360px来做
    maisui99
        8
    maisui99  
       2015-08-27 12:41:56 +08:00
    window.screen.width/window.devicePixelRatio 是不可靠的。。目前是 UA+设备宽度,但是还是不准,蛋疼
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   908 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 664ms · UTC 22:06 · PVG 06:06 · LAX 15:06 · JFK 18:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.