È stato chiesto a SO l'agente utente di iPhone 4 e l'agente utente iOS 5.0, un question.Rilevamento di iPhone 5 e di qualsiasi dispositivo iOS sotto di esso
Io uso quanto segue per rilevare diversi dispositivi mobili, finestra e schermo.
Mi piacerebbe essere in grado di distinguere tra l'iPhone 5 e tutti gli altri dispositivi iOS. Per quanto ne so, la linea che sto usando per rilevare l'agente utente di iOS 5.0 var iPhone5
si applicherebbe anche a qualsiasi dispositivo iOS con iOS 5.0, quindi tecnicamente non è corretto.
var pixelRatio = window.devicePixelRatio || 1;
var viewport = {
width: window.innerWidth,
height: window.innerHeight
};
var screen = {
width: window.screen.availWidth * pixelRatio,
height: window.screen.availHeight * pixelRatio
};
var iPhone = /iPhone/i.test(navigator.userAgent);
var iPhone4 = (iPhone && pixelRatio == 2);
var iPhone5 = /iPhone OS 5_0/i.test(navigator.userAgent); // ?
var iPad = /iPad/i.test(navigator.userAgent);
var android = /android/i.test(navigator.userAgent);
var webos = /hpwos/i.test(navigator.userAgent);
var iOS = iPhone || iPad;
var mobile = iOS || android || webos;
window.devicePixelRatio
è il rapporto tra i pixel fisici e pixel indipendenti dal dispositivo (buchi) sul dispositivo. window.devicePixelRatio
= pixel fisici/dips.
Ulteriori informazioni here.
@nhahtdh: Beh, questo è il programma utente iOS 5.0 non l'iPhone 5. Ricordate, iOS 5.0 può essere eseguito su qualsiasi dispositivo iOS compreso l'iPhone 5, ma mi piacerebbe come per esempio distinguere tra un iPhone 4 e un iPhone 5. – fuzz
@nhahtdh: Perché dovresti commentare e quindi votare per chiudere? Inoltre, ti interessa dare una ragione? – fuzz
E 'stata una reazione istintiva senza leggere attentamente quello che stai chiedendo. – nhahtdh