【问题标题】:What's the best way to detect a webOS tablet with jQuery / plain JS使用 jQuery / 纯 JS 检测 webOS 平板电脑的最佳方法是什么
【发布时间】:2011-11-02 16:00:30
【问题描述】:

我正在寻找使用纯 JS 检测 webOS 平板电脑的最佳方法,如果使用 jQuery 也更容易。平板电脑的用户代理应如下所示:

User-Agent:Mozilla/5.0 (webOS/1.3; U; en-US) AppleWebKit/532.2 (KHTML, like Gecko) Version/1.0 Safari/532.2 Desktop/1.0

所以一个简单的方法是:

var deviceAgent = navigator.userAgent.toLowerCase();
webOS = deviceAgent.match(/(webos)/);

这已经是最好的方法了吗?您可能会说检测您需要确定的功能是否存在,但这对我不起作用,因为我想要的功能存在但不能像在任何桌面上那样工作,所以我真的只想知道是这是否是 webOS 设备。

更新:刚刚发现平板真的使用了另一个用户代理:

Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.0; U; xx-xx) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/233.48 Safari/534.6 TouchPad/1.0

所以上面的内容可能应该是:

var deviceAgent = navigator.userAgent.toLowerCase();
webOS = deviceAgent.match(/(webos|hpwos)/);

【问题讨论】:

    标签: javascript jquery webos


    【解决方案1】:

    这是 PHP 中的一个函数,可以检测 WebOS 和您可能需要的任何其他移动设备。小于 1kb 的代码 =)

    function detectMobileDevice() {
        if(preg_match('/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i', $_SERVER['HTTP_USER_AGENT'])) {
            return true;
        }
        else {
            return false;
        }
    }
    

    如果您只想做 webOS,请将第 2 行更改为:

    if(preg_match('/(webos)/i', $_SERVER['HTTP_USER_AGENT'])) {
    

    使用:

    if(detectMobileDevice()) {
        // If mobile device detected, do something
    }
    else {
       // Otherwise, do something else...
    }
    

    如果您需要更多详细信息,请访问此处:http://www.justindocanto.com/scripts/detect-a-mobile-device-in-php-using-detectmobiledevice

    【讨论】:

      【解决方案2】:

      我不知道您是否可以进行任何仅识别 WebOS 的功能检测。它是基于 WebKit 的,因此所有其他基于 WebKit 的平台都将具有相同的功能。查看Zepto.js' 来源,他们所做的与您完全相同:

      ua.match(/(webOS|hpwOS)[\s\/]([\d.]+)/)
      

      (第二次捕获的是版本)

      来自detect.js

      【讨论】:

        猜你喜欢
        • 2011-09-16
        • 1970-01-01
        • 2013-03-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-04
        • 2012-11-10
        • 2011-11-30
        相关资源
        最近更新 更多