2012-05-27 14 views
8

Ho bisogno di ottenere in modo dinamico le dimensioni dello schermo di tutti i dispositivi mobili da una pagina Web utilizzando Javascript.Come ottenere la larghezza dello schermo dell'iPad in Javascript

Ho provato questo:

//get window's size 
if (document.body && document.body.offsetWidth) { 
windowsWidth = document.body.offsetWidth; 
windowsHeight = document.body.offsetHeight; 
} 
if (document.compatMode=='CSS1Compat' && 
    document.documentElement && 
    document.documentElement.offsetWidth) { 
windowsWidth = document.documentElement.offsetWidth; 
windowsHeight = document.documentElement.offsetHeight; 
} 
if (window.innerWidth && window.innerHeight) { 
windowsWidth = window.innerWidth; 
windowsHeight = window.innerHeight; 
} 

Ma su iPad io ottenere queste dimensioni: 980 x 1080 (non è il vero 768 x 1024).

Grazie

Mauro

+2

qui, vedere questa risposta: http://stackoverflow.com/q/6850164/1291428 – Sebas

+4

la dimensione della finestra **! = ** la risoluzione dello schermo. – gdoron

+0

hai provato l'oggetto schermo? – Zaffy

risposta

4

Come le dimensioni dello schermo su iPad richiede lettura delle proprietà di larghezza e altezza dell'oggetto schermo.

var height = screen.height; 
var width = screen.width; 

Questi forniranno 768 e 1024 a seconda dell'orientamento.

+1

screen.width e screen.height restituiscono valori errati. Guarda le osservazioni di seguito: - per iPad3 il suo ritorno 768 x 1024 in cui nella sua risoluzione originale è 1536 x 2048. - Per iPhone5 suo ritorno 320 x 568 in cui nella sua risoluzione originale è 640 x 1136. Come da le mie osservazioni, screen.width e screen.height funzionano perfettamente bene per i dispositivi Android. Ma per i dispositivi iOS, restituisce valori errati. Qualche idea su come trovare la risoluzione dello schermo per i dispositivi iOS? –

+0

@AnkitPrajapati restituisce la risoluzione css, che è lo scopo di screen.width. Si dovrebbe sempre considerare la risoluzione del dispositivo come risoluzione CSS. –

+0

@JoshLyness: Grazie per il chiarimento. :) –

Problemi correlati