2012-05-09 13 views
9

मैं स्क्रीन की ऊंचाई पर कंटेनर को कम करने के लिए, स्टेटसबार और टूलबार को कम करने के लिए आईफोन सफारी में उपलब्ध स्क्रीन आकार प्राप्त करने का प्रयास कर रहा हूं।आईफ़ोन सफारी स्क्रीन.वैलहाइट और स्टेटसबार/टूलबार/एड्रेसबार

चूंकि आईओएस हमेशा स्क्रीन आयाम देता है जैसे कि फोन पोर्ट्रेट अभिविन्यास में है, मैं स्क्रीन का उपयोग कर रहा हूं। वैलेंटाइंड परिदृश्य में ऊंचाई को काम करने के लिए। अनुसरण कर रहे हैं आयाम लौटे:

screen.width; //320 
screen.availWidth; //300 

20px अंतर फोन पर शीर्ष स्थिति बार के लिए खातों लेकिन खाते में स्क्रीन के नीचे स्थित बटन बार (उपकरण पट्टी) नहीं लेता है।

क्या कोई ऐसी संपत्ति है जिसका उपयोग मैं 268 पीएक्स वापस कर सकता हूं?

मैं बस (स्क्रीन.वैलविड्थ - 32) करता हूं लेकिन एक मौका है कि उपयोगकर्ता साइट को डेस्कटॉप बुकमार्क के रूप में जोड़ देगा, इस मामले में यह बार मौजूद नहीं होगा और 300px मान सही होगा।

+0

अधिक शोध और प्रयोग के बाद लाभ प्राप्त करने के बाद 300 का अर्थ समझ में आता है - यह ऊंचाई 20px स्टेटस बार से कम है। दूसरे शब्दों में, ओएस क्रोम को घटाएं और ब्राउजर क्रोम नहीं। मान पुराने आईओएस संस्करण के लिए भी गलत था और इसलिए मैं इस पर भरोसा करने की सिफारिश नहीं करता। – howard10

+0

इसी तरह के प्रश्न का मेरा उत्तर जांचें, थोड़ा सा मदद कर सकते हैं http://stackoverflow.com/questions/8205812/jquery-js-ios-4-and-document-height-problems –

उत्तर

10

मेरे पास सही उत्तर नहीं है, लेकिन आप यह निर्धारित कर सकते हैं कि उपयोगकर्ता मोबाइल सफारी में है या डेस्कटॉप बुकमार्क में navigator.standalone संपत्ति के साथ है। इसके साथ आप तय कर सकते हैं कि 32px को घटाया जाए या नहीं।

संपादित करें: उत्तर मिला। <meta name="viewport" content="user-scalable=no, width=device-width, height=device-height" /> का उपयोग करें और फिर सही मान window.innerWidth/window.innerHeight

+0

पढ़ने के बाद [http] // tripleodeon.com/2011/12/first-understand-your-screen/), मैं इसी तरह के निष्कर्षों पर आ रहा था। मुझे सही दिशा बताने के लिए धन्यवाद। – howard10

संबंधित मुद्दे