Detectando browser mobile com javascript
Boas!!
Eu previsava de uma função que detectasse se o visitante estava utilizando um browser mobile, achei esta aqui na internet:
function isMobile() {
return preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i", $_SERVER['HTTP_USER_AGENT']);
}
funciona bem, está tecnicamente bem escrita, e resolvia a questão.
Fiz uma versão em javascript, ficou assim:
/**
* @function isMobile
* detecta se o useragent e um dispositivo mobile
*/
function isMobile()
{
var userAgent = navigator.userAgent.toLowerCase();
if( userAgent.search(/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i)!= -1 )
return true;
}
Ambas se baseiam no cabeçalho user agent que cada browser envia junto com a requisição http.
O funcionamento é o mesmo nas duas, logicamente não tenho todos esses aparelhos, consegui testar num tablet samsung, no iphone, e em outros 2 androids.
É isso, conseguiu testar com mais algum dispositivo ?
Caso não tenha “funcionado”, me envie o user agent dele, para que eu inclua na expressão regular.