Подтвердить что ты не робот

Как проверить useragent Windows Phone с помощью javascript?

Я могу проверить iPhone с помощью этого кода:

(navigator.userAgent.match(/iPhone/i))

Но я хочу настроить таргетинг на Windows Phone с помощью этого userAgent:

Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1; 
Motorola_ES405B_19103; Windows Phone 6.5.3.5)

Есть ли способ сделать это?

4b9b3361

Ответ 1

Windows Phone, безусловно, похоже на то, что вы хотите совместить. Так что просто обменивайтесь iPhone в своем совпадении с этим термином, и вам хорошо идти!


Как упоминалось в комментариях: поиск также iemobile даст вам еще более широкий диапазон обнаруженных мобильных телефонов Microsoft.

например:.

if(navigator.userAgent.match(/Windows Phone/i)){
    alert('Is a windows phone!');
}

if(navigator.userAgent.match(/iemobile/i)){
    alert('Is some mobile IE browser!')
}

// and probably less common, but still useful:
if(navigator.userAgent.match(/WPDesktop/i)){
    alert('It is a windows phone in desktop mode!')
}

Ответ 2

Nokia Lumia или любой браузер WPhone имеет режим просмотра рабочего стола и мобильного телефона, IEMobile отправляет другой пользовательский агент. Рабочий режим не отправляет аргумент модели Windows Phone X.Y. Найдите теги Windows + ARM + Touch + WPDesktop и, возможно, размер экрана, чтобы угадать wphone или планшет. Его хак, который я знаю.

Lumia 920 WPhone 8, рабочий режим
Mozilla/5.0 (совместимый MSIE 10.0, Windows NT 6.2, Trident/6.0, ARM; Touch, WPDesktop)

Lumia 920 WPhone 8
Mozilla/5.0 (совместимый MSIE 10.0, Windows Phone 8.0, Trident/6.0, IEMobile/10.0, ARM, Touch, NOKIA, Lumia 920)

Lumia 820 WPhone 8
Mozilla/5.0 (совместимый MSIE 10.0, Windows Phone 8.0, Trident/6.0, IEMobile/10.0, ARM, Touch, NOKIA, Lumia 820)

Lumia 630 WPhone 8
Mozilla/5.0 (Windows Phone 8.1, ARM; Trident/7.0; Touch; rv: 11.0; IEMobile/11.0; NOKIA; id313-3), как Gecko

Lumia 630 WPhone 8, рабочий режим
Mozilla/5.0 (Windows NT 6.2, ARM; Trident/7.0; Touch; rv: 11.0; WPDesktop; NOKIA; id313-3), как Gecko

Lumia 800 WPhone 7.5
Mozilla/5.0 (совместимый MSIE 9.0, Windows Phone OS 7.5, Trident/5.0, IEMobile/9.0, NOKIA, Lumia 800)

Lumia 900
Mozilla/5.0 (совместимый MSIE 9.0, Windows Phone OS 7.5, Trident/5.0, IEMobile/9.0, NOKIA, Lumia 900)

WP7.5 Режим рабочего стола IEMobile9
Mozilla/5.0 (совместимо, MSIE 9.0, Windows NT 6.1, Trident/5.0; XBLWP7; ZuneWP7)

Ответ 4

Я написал этот is-mobile component, который может определить, работает ли вы на Windows Phone (он проверяет Windows Phone, IEMobile и WPDesktop) и других платформ.

Не стесняйтесь импортировать его и использовать, как показано в следующих примерах:

isMobile.Android() => true/false
isMobile.iOS() => true/false
isMobile.any() => true/false
isMobile.Windows() => true/false
isMobile.BlackBerry() => true/false

Ответ 5

function isIEMobile() {
    var regExp = new RegExp("IEMobile", "i");
    return navigator.userAgent.match(regExp);
}