Ich versuche, die verfügbare Bildschirmgröße in iPhone Safari zu erhalten, um einen Container auf die Höhe des Bildschirms ohne die Statusleiste und Symbolleiste zu verkleinern.iPhone Safari screen.availHeight und statusbar/toolbar/addressbar
Da iOS immer Bildschirmabmessungen zurückgibt, als ob das Telefon im Hochformat ausgerichtet ist, verwende ich screen.availWidth, um die Höhe in Querformat zu berechnen. Im Folgenden sind die Dimensionen zurückgegeben:
screen.width; //320
screen.availWidth; //300
Der 20px Unterschied am Telefon für das Top-statusbar Konten aber nicht berücksichtigt nicht die Tastenleiste (Toolbar) am unteren Rand des Bildschirms.
Gibt es eine Eigenschaft, die ich 268px zurückgeben könnte?
Ich würde nur tun (screen.availWidth - 32), aber es gibt eine Chance, der Benutzer wird die Website als ein Desktop-Lesezeichen hinzufügen, in diesem Fall wird diese Leiste nicht vorhanden sein und der 300px Wert wäre korrekt.
Nach mehr Forschung und Experimente die AvailWidth 300 macht Sinn - es ist die Höhe minus der 20px Statusleiste. Mit anderen Worten, abzüglich des Betriebssystems Chrome und nicht des Browsers Chrome. Der Wert war auch falsch für eine ältere iOS-Version und daher würde ich nicht empfehlen, sich zu sehr darauf zu verlassen. – howard10
Überprüfen Sie meine Antwort auf ähnliche Frage, könnte ein wenig helfen http://StackOverflow.com/Questions/8205812/Jquery-JS-ios-4-and-Document-Height-Problems –