更新Windows 8移动设备的设备检测代码 - 手机和Surface X.

时间:2014-12-17 01:13:38

标签: windows-phone-8 mobile device-detection

我之前使用附加的代码来检测移动设备,但是对于Windows 8移动电话和任何Surface版本它都不起作用(出于显而易见的原因)。我不知道适用于Windows 8手机和Surface的userAgent。需要更改什么才能检测Surface或Windows 8手机?任何帮助将不胜感激 !非常感谢。

function detect() {
var uagent = navigator.userAgent.toLowerCase();
var mobile = false;
var search_strings = [
"iphone",
"ipod",
"ipad",
"series60",
"windows ce",
"windows7phone",
"w7p",
"windows8phone",
"w8p",
"blackberry","
];
for (i in search_strings) {
    if (uagent.search(search_strings[i]) > -1)
        mobile = true;
    }
            return mobile;
}

if (detect()){
    window.location = "mobile";
}

1 个答案:

答案 0 :(得分:0)

RegExp中使用User Agent进行搜索,这涵盖了99%的现代设备:

/Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Symbian|Opera\sM(obi|ini)|Blazer|Dolfin|Dolphin|UCBrowser/.test(navigator.userAgent);

此外,您可以使用服务wurfl.io - 它将在javascript中返回一个对象,其中包含设备可移动设备的标志。它使用wurfl云和数千个已知的UA。