Identificare dispositivi mobile con Javascript

Mattepuffo's logo
Identificare dispositivi mobile con Javascript

Identificare dispositivi mobile con Javascript

Anche con Javascript è possibile identificare i dispositivi mobile.

Vi indicherò due modalità per farlo, di cui una più compatta e l'altra più specifica.

Comunque un entrambi i casi useremo l'oggetto navigator.

Questa la prima funzione:

function detectMobile() {
    if (navigator.userAgent.match(/Android/i)
            || navigator.userAgent.match(/webOS/i)
            || navigator.userAgent.match(/iPhone/i)
            || navigator.userAgent.match(/iPad/i)
            || navigator.userAgent.match(/iPod/i)
            || navigator.userAgent.match(/BlackBerry/i)
            || navigator.userAgent.match(/Windows Phone/i)
            ) {
        return true;
    } else {
        return false;
    }
}

Diciamo che si commenta da sola.

La seconda modalità è questa:

var isMobile = {
    Android: function() {
        return navigator.userAgent.match(/Android/i);
    },
    BlackBerry: function() {
        return navigator.userAgent.match(/BlackBerry/i);
    },
    iOS: function() {
        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
    },
    Opera: function() {
        return navigator.userAgent.match(/Opera Mini/i);
    },
    Windows: function() {
        return navigator.userAgent.match(/IEMobile/i);
    },
    any: function() {
        return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
    }
};

Questa è più specifica perchè nel complesso ci mostra se siamo in ambito mobile o no, e in più possiamo testare anche i dispositivi singoli.

Così che se vogliamo fare una eccezione per Android, ci basterà fare il controllo su quello.

Questa seconda modalità si richiama così:

if (isMobile.Android()) {
      console.log('Android');
}

Direi molto easy.

Ciao!!


Condividi

1 Commenti

  • Lorenzo Costantini

    Buongiorno, si potrebbe includere nello script il nuovo SO di Huawey? Grazie

    18/12/2020

Commentami!