2011-11-17 15 views
8

मैं हमारी साइट के लिए कुछ मोबाइल उपयोगिता अनुकूलन जोड़ रहा की ऑनस्क्रीन कीबोर्ड में उपलब्ध हैं। इस के हिस्से के रूप में मैं उपयोगकर्ता को अपेक्षित डेटा प्रकार के लिए सर्वोत्तम इनपुट टूल देने के लिए टेक्स्टफील्ड के प्रकार की विशेषता को बदल रहा हूं।का पता लगा रहा है, तो कुंजी मोबाइल डिवाइस

टचस्क्रीन मोबाइल उपकरणों में एक मुद्दा मैं सामने आया हूं कि एक ही ओएस पर विभिन्न ओएस और यहां तक ​​कि विभिन्न ब्राउज़रों पर ब्राउज़र, इनपुट प्रकार = "संख्या" का उपयोग होने पर अलग ऑनस्क्रीन कीबोर्ड दिखाते हैं।

सफारी आईओएस 4.3.3 (iPhone 4) और क्रोम पर एंड्रॉयड 2.3.4 पर एक दशमलव बिंदु शामिल हैं, लेकिन फ़ायरफ़ॉक्स एंड्रॉयड 2.3.4 पर नहीं करता है।

मैं Firefox में कोई सुधार के साथ कदम विशेषता (कदम = "0.1") जोड़ने की कोशिश की है।

मैं दशमलव बिंदु मैं फ़ायरफ़ॉक्स को दिखाने के लिए पूर्ण QWERTY कीबोर्ड है, जो स्पष्ट रूप से सबसे अच्छा उपयोगकर्ता अनुभव के लिए बनाने के लिए नहीं जा रहा है की आवश्यकता होगी नहीं दिखा सकते हैं। यह ब्राउज़र/डिवाइस स्नीफिंग का मुद्दा भी उठाता है। या तो मैं QWERTY डिफ़ॉल्ट बनाने के लिए, और उपकरणों की मुट्ठी मैं वास्तव में पर परीक्षण कर सकते हैं, या numberpad डिफ़ॉल्ट बनाने के लिए numberpad दिखाने के लिए, और उपकरणों पर QWERTY में वापस स्विच जो मैं जानता हूँ कि इस पर टूट जाएगा, दूसरा विकल्प की आवश्यकता होगी बहुत कम मजबूत होने के कारण मैं कभी भी बनाए गए हर डिवाइस पर परीक्षण नहीं कर सकता।

इनपुट प्रकार = "संख्या" के लिए समर्थन के लिए परीक्षण एक फिक्स नहीं है, क्योंकि स्पष्ट रूप से ब्राउज़र तत्व का समर्थन करता है, यह सभी प्रकार के प्रकारों को दर्ज करने के लिए पर्याप्त कीबोर्ड विकल्प प्रदान नहीं करता है।

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

मैं भी है कि मैं जावास्क्रिप्ट का उपयोग कर रहा यहाँ, के रूप में यह एक वेबसाइट है, न कि एक देशी अनुप्रयोग है उल्लेख करना चाहिए।

धन्यवाद :)

+0

क्या आपके लिए इनपुट प्रकार = "टेल" काम करेगा? – ozbek

+1

कम से कम एंड्रॉइड पर, कोई आवश्यकता नहीं है कि * कुंजी * भी हो। एक इनपुट विधि अन्य रूपों का उपयोग कर सकती है, जैसे कि ग्राफिक 2 जेस्चर का उपयोग कर। मूल एंड्रॉइड ऐप से यह निर्धारित करने का कोई तरीका नहीं है कि उपयोगकर्ता की वर्तमान इनपुट विधि कुछ कुंजी दिखा रही है या नहीं, ब्राउज़र से अकेले रहने दें। – CommonsWare

उत्तर

1

दुर्भाग्य से, फ़ायरफ़ॉक्स संख्यात्मक इनपुट प्रकार का समर्थन नहीं करता। हालांकि, आप इनपुट इनपुट बनाने के लिए इन अतिरिक्त HTML विशेषताओं का उपयोग करने का प्रयास कर सकते हैं, उपयोगकर्ता को संख्यात्मक इनपुट

inputmode='numeric' 
pattern='[0-9]*' //this makes it show only the numbers 0-9 without all the slashes and dashes and everything. Ignore this if that's not what you want 
+0

'पैटर्न' हालांकि सफारी द्वारा समर्थित नहीं है। – ozbek