HTML5:检测你是否';你是在手机上还是在pc上使用javascript?

HTML5:检测你是否';你是在手机上还是在pc上使用javascript?,javascript,html,responsive-design,media-queries,Javascript,Html,Responsive Design,Media Queries,我可以使用什么javascript代码来检测用户是否在HTML5的移动浏览器或pc/mac浏览器上?几年前我一直在研究这个问题。简而言之,你不能100%可靠地做到这一点。似乎有两种方法常用于提供“最佳猜测”: 1。用户代理检测 这是您检查客户声称是什么的地方。 e、 g 它不是完美的,因为我相信这个属性很容易被意外或其他方式改变。此外,在2年/2周/2天的时间内,此列表仍然准确的可能性很小 2。使用客户端功能 正如您所想象的,一种更实用的方法-允许您满足客户已知的物理能力。e、 g if( sc

我可以使用什么javascript代码来检测用户是否在HTML5的移动浏览器或pc/mac浏览器上?

几年前我一直在研究这个问题。简而言之,你不能100%可靠地做到这一点。似乎有两种方法常用于提供“最佳猜测”:

1。用户代理检测 这是您检查客户声称是什么的地方。 e、 g

它不是完美的,因为我相信这个属性很容易被意外或其他方式改变。此外,在2年/2周/2天的时间内,此列表仍然准确的可能性很小

2。使用客户端功能 正如您所想象的,一种更实用的方法-允许您满足客户已知的物理能力。e、 g

if( screen.width <= 480 ) {     
    // is mobile.. 
}

if(screen.width)只是澄清一下:所谓“更高的像素密度”,您的意思是DPI更高,因此像素更小,而且排列更紧密,这可能导致移动设备上出现重大可用性问题,即使该设备具有“笔记本电脑分辨率”比如说1024像素宽。正确吗?确切地说:例如,平板电脑之类的设备可能会报告它的宽度为“1024像素”,并欺骗像我这样的“传统”web开发人员,使他们认为这等于拥有一个典型的办公室显示器的宽度,而办公室显示器的宽度也可能报告为1024像素宽。但你为什么需要这样做呢?
if( screen.width <= 480 ) {     
    // is mobile.. 
}