确定客户端设备是mobiile还是pc

时间:2016-04-20 14:41:13

标签: javascript jquery

我正在尝试确定客户端是否正在使用移动设备,如果它不是移动设备,那么我想将其记录为PC,无论是笔记本电脑还是台式机。到目前为止,我已经设法编写代码来确定它是否是一个移动设备,但我对如何确定它是否是一个电脑有点困惑? navigator.platform将给我WIN32,我不认为这将是准确的

var customizeForDevice = function(){
        var ua = navigator.userAgent;
        var checker = {
          iphone: ua.match(/(iPhone|iPod|iPad)/),
          blackberry: ua.match(/BlackBerry/),
          android: ua.match(/Android/)
        };
        if (checker.android){
            $('.android-only').show();
        }
        else if (checker.iphone){
            $('.idevice-only').show();
        }
        else if (checker.blackberry){
            $('.berry-only').show();
        }
        else {
            $('.unknown-device').show();
        }
    }

2 个答案:

答案 0 :(得分:0)

尝试使用

if(jQuery.browser.mobile)
{
   console.log('You are using a mobile device!');
}
else
{
   console.log('You are not using a mobile device!');
}

// jQuery.browser.mobile如果是移动设备

将返回true

答案 1 :(得分:0)

试图找出哪个设备在浏览器中访问网站并非易事。在使用“导航器”的方法中,您必须创建和维护自己的映射和机制,将其视为“客户端”或“桌面”。 我建议使用一些现有的库,而不是写一些自己的库。

对于这种情况,

isMobile可能是一个有趣的选择。

isMobile.phone会在这里回答您的问题,如果它是手机的话。它还提供了平板电脑设备的问题:isMobile.tablet