我怎么知道我是在电脑还是平板电脑上运行

时间:2013-10-14 03:30:18

标签: javascript jquery

是否可以在台式机或移动设备上运行。

由于桌面响应性不同,我想知道用户是否可以旋转屏幕。

5 个答案:

答案 0 :(得分:0)

您可以使用脚本查找浏览器用户代理字符串。每个浏览器都有不同的用户代理。 Mac上的Safari和iPhone上的Safari也有不同的用户代理。

我不确定你的意思,你想要javascript知道你的设备类型吗?

答案 1 :(得分:0)

我认为您可以使用modernizr来检测浏览器行为。

触摸事件触摸

Modernizr.touch测试仅指示浏览器是否支持触摸事件,触摸事件不一定反映触摸屏设备。例如,Palm Pre / WebOS(触摸)手机不支持触摸事件,因此无法通过此测试。此外,Chrome(台式机)过去常常对此表示支持,但此后一直在纠正。 Modernizr还通过媒体查询测试多点触控支持,这是Firefox 4为Windows 7平板电脑公开的方式。有关详细信息,请参阅Modernizr触摸测试。

建议将触摸鼠标事件设置在一起,以满足混合设备的需求 - 请参阅Touch和Mouse HTML5 Rocks文章。

答案 2 :(得分:0)

以下内容将为您提供用户代理。

navigator.userAgent

然后您可以使用以下内容:

if(navigator.userAgent.indexOf("DESIRED USER AGENT") != -1) {
    // Mobile specific code
}

您应该会发现以下主题有用:Auto detect mobile browser (via user-agent?)

答案 3 :(得分:0)

您可以使用Modernizr:

Modernizr创建一个元素,在该元素上设置特定的样式指令,然后立即尝试检索该设置。理解该指令的Web浏览器将返回合理的东西;不理解它的浏览器将不返回任何内容或“未定义”。 Modernizr使用结果来评估Web浏览器是否支持该功能。

例如:

if ( Modernizr.touch ) {
// mobile
} else {
// desktop
}

以下链接包含一些用于检测浏览器的javascript内置函数:

http://www.quirksmode.org/js/detect.html

答案 4 :(得分:0)

结帐mobile detect。它可能对你想要的东西有点多,但它是全面的。