2012-06-12 17 views
9

मुझे एक ऐसे पृष्ठ पर स्टॉक एंड्रॉइड ब्राउज़र के साथ कोई समस्या है जिसमें मैं बिल्ड कर रहा हूं। सीधे शब्दों में कहें, पृष्ठ पहले ज़ूमिंग के बिना लंबवत स्क्रॉल नहीं करेगा। मैंने सोचा कि मुझे यह पता चला था कि जब मैंने पकड़ा था कि टैग ब्राउजर विंडो की तुलना में छोटी ऊंचाई की रिपोर्ट कर रहा था, लेकिन फिक्सिंग ने स्क्रॉलिंग समस्या को ठीक नहीं किया। (इंडेक्स पेज पर ब्लैक बॉक्स तत्व की गणना की गई ऊंचाई की रिपोर्ट करता है।)एंड्रॉइड डिफ़ॉल्ट ब्राउज़र वेब पेज स्क्रॉल नहीं कर रहा है

मेरा टेस्ट डिवाइस एंड्रॉइड 2.3 चलाने वाला एक Droid Incredible है। Android के लिए फ़ायरफ़ॉक्स में स्क्रॉलिंग कार्य, साथ ही साथ मेरे एंड्रॉइड 4.0 टैबलेट और सभी आईओएस डिवाइस।

साइट के मेरे देव का निर्माण यहाँ है: www.adamjdesigns.info/csu/engage

संपादित करें - अन्य कोड मैं कोशिश की है:

  1. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
  2. if(navigator.userAgent.match(/Android 2/) && $(window).height() < 600) { $('html').css({'height':$(window).height(),'overflow':'auto'}); }

किसी भी मदद की बहुत सराहना कर रहा है!

+0

यह कोई जवाब नहीं है, लेकिन मैंने सर्फिंग करते समय स्टॉक पर वेबकिट आधारित ब्राउज़र के साथ यह व्यवहार देखा है। यह एक आम घटना थी इसलिए मेरा अनुमान यह है कि यह एक बग है जिसे एचसी में तय किया गया था। बस कह रहा है ... – Simon

+0

धन्यवाद, साइमन। कम से कम यह जानने में मदद करता है कि यह मेरे कोडिंग के साथ जरूरी नहीं है जो समस्या पैदा कर रहा है। दुर्भाग्य से, बग बहाना मुझे मेरे मालिक के साथ हुक से नहीं निकाल देगा! – AdamJ

+0

आप अपने आप को 2.3 के साथ एक डिवाइस प्राप्त कर सकते हैं, शायद एक कस्टम रोम फ्लैश करें, फिर 15 मिनट के लिए सर्फ करें - भाग्य के साथ आपको जल्द ही एक पृष्ठ मिलेगा जो व्यवहार प्रदर्शित करता है - आईआईआरसी, विडंबना यह है कि एंड्रॉइड एसडीके दस्तावेज़ मुझे ऐसा करने लगते हैं। स्पेसिफिक डिवाइस एक एडवेंचर वेगा एक 2.3 कस्टम रोम चला रहा था। – Simon

उत्तर

3

मैं यह पता लगा! पृष्ठ में YouTube वीडियो के लिए iframe था, और मुझे यकीन नहीं है कि यह iframe स्वयं या इसके अंदर वीडियो चलाने के लिए संबंधित स्क्रिप्टिंग है, लेकिन डीओएम से इसे हटाने से समस्या हल हो गई है। (मैंने इसे मोबाइल स्क्रीन पर छिपाने के लिए सेट किया था।)

आपकी मदद के लिए धन्यवाद, हर कोई!

+0

हाय मुझे एक ही समस्या का सामना करना पड़ रहा है। एक HTML पृष्ठ में मैं एक आईफ्रेम का उपयोग कर रहा हूं, iframe संरचना की तरह एक गैलरी सूचीबद्ध करता है और यह एक उत्तरदायी डिजाइन है। यह आईफोन पर अच्छा काम करता है। लेकिन स्क्रॉल मेरे Google नेक्सस पर काम नहीं करता है। यह कुछ हद तक स्क्रॉल करता है और स्क्रॉलिंग रोकता है। कोई सुझाव? –

1

आपका व्यूपोर्ट के लिए इस प्रयास करें:

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 
+0

अच्छा सुझाव, लेकिन मुझे पहले से ही मिल गया है। मैंने एचटीएमएल 5 बॉयलरप्लेट का इस्तेमाल किया, जिसमें वह शामिल था। मैंने बिना किसी लाभ के '''पर' अतिप्रवाह: स्क्रॉल' मैन्युअल रूप से निर्दिष्ट करने का भी प्रयास किया है। – AdamJ

9

हालांकि यह एक हैक है, मेरे पास एक और फिक्स है जो डेवलपर्स की मदद कर सकता है। मैंने पाया कि स्टॉक एंड्रॉइड 2.3.4 ब्राउज़र के साथ, यदि कोई प्रारंभिक पृष्ठ लोड आकार को "1" से थोड़ा बढ़ाया आकार बढ़ाता है, तो वर्टिकल स्क्रॉलिंग पहले ज़ूम चुटकी के बिना काम करता है। उदाहरण के लिए:

<meta name="viewport" content="width=device-width, initial-scale=1.02" /> 
+1

यह मेरे लिए एक समान समस्या तय करता है, धन्यवाद। – Dave

+0

बहुत स्वागत है, डेव - इसे सुनकर खुशी हुई। – Gatsby

+0

ऐसा लगता है कि मैं कुछ अवैध कर रहा हूं, बहुत बहुत धन्यवाद !, यह मेरे लिए एंड्रॉइड एमुलेटर और डिवाइस पर काम करता है। – porfiriopartida

2

मुझे क्या समस्या मिली, मैंने अतिप्रवाह-एक्स: छुपाया था; मेरे शरीर के टैग के लिए। यह क्षैतिज स्क्रॉल बार को बंद करना चाहिए, लेकिन इसके बजाय एंड्रॉइड में यह लंबवत स्क्रॉलर बंद कर देता है। और एंड्रॉइड में, मैं केवल क्षैतिज स्क्रॉल कर सकता हूं। शायद एंड्रॉइड ब्राउज़र में एक बग। मैं पुराने एंड्रॉइड फोन (एचटीसी थंडरबॉल्ट) का उपयोग कर रहा हूं। मैं अपनी सीएसएस फ़ाइल के माध्यम से चला गया और सभी ओवरफ्लो-एक्स हटा दिया: छुपाया और अब मैं लंबवत रूप से स्क्रॉल कर सकता हूं।

3

एफडब्ल्यूआईडब्ल्यू, मुझे अपने वेबपृष्ठ के साथ एंड्रॉइड 2.3 में स्क्रॉल नहीं करने में एक ही समस्या थी। मैंने समस्या को हल करने के लिए कुछ सशर्त जावास्क्रिप्ट के साथ गत्स्बी का जवाब इस्तेमाल किया। यहाँ मेरा अंतिम कोड है:

<meta name="viewport" content="width=device-width, initial-scale=1.00"/> 
<script type="text/javascript"> 
    window.onload=function(){ 
     var ua = navigator.userAgent; 
     if(ua.indexOf("Android")>=0){ 
      var androidversion=parseFloat(ua.slice(ua.indexOf("Android")+8)); 
      if(androidversion<=2.3){ 
       document.getElementsByName("viewport")[0].setAttribute("content","width=device-width, initial-scale=1.02"); 
      } 
     } 
    }; 
</script> 

यह समाधान पहले सेट सामान्य मेटा व्यूपोर्ट टैग जो सबसे उपकरणों के साथ अच्छा काम करता है, तो एंड्रॉयड संस्करण का पता लगाने और "काट दिया" मूल्य पर मेटा टैग सामग्री को बदलने के लिए सशर्त जावास्क्रिप्ट का उपयोग करता है (गत्स्बी द्वारा प्रदान किया गया) जो एंड्रॉइड < = 2.3 पर स्क्रॉल करने की अनुमति देता है। यह उन उपकरणों के लिए अनावश्यक क्षैतिज स्क्रॉलिंग को रोकता है जिन्हें हैक की आवश्यकता नहीं है।

+0

मुझे बस इस स्थिति में था और यह हल हो गया। मैं jquery का उपयोग करता हूं लेकिन मैंने इसे मुख्य जेएस फ़ाइल के शीर्ष पर रखा है और यह काम करता है। – BlekStena

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