2016-09-06 7 views
6

पिछले मोबाइल ऐप्स में मैंने विकसित किया है, मैंने पाया कि click ईवेंट सभी उपकरणों में अपेक्षित काम नहीं करता है (उदाहरण के लिए: उन गेम में जिसमें उपयोगकर्ता को स्क्रीन पर तेज़ी से टैप/क्लिक करना होता था , click ईवेंट को ट्रिगर करने के बजाय, डबल क्लिक ट्रिगर किया गया था), और touchstart का उपयोग करके मैं जो चाहता था उसके लिए बेहतर परिणाम दिए।मोबाइल ऐप्स पर बहिष्कृत स्पर्श संचालन

तब से, मैंने click के बजाय touchstart ईवेंट सुनना शुरू कर दिया;

कार्य है कि touchstart घटनाओं पर स्पष्ट उपयोगकर्ता संपर्क की आवश्यकता प्रदर्शन बहिष्कृत है और M54 में निकाल दिया जाएगा, अक्टूबर 2016 के आसपास देखें https://www.chromestatus.com/features/5649871251963904 अधिक जानकारी के लिए: लेकिन क्रोम पर परीक्षण, मैं जे एस कंसोल में निम्न चेतावनी संदेश मिला ।

मैं से लिंक किए गए पृष्ठ (और इसके अंदर लिंक) का दौरा किया और ऐसा लगता है कि इस नए व्यवहार, कुछ अवांछित कार्रवाई से बचने के लिए है और विशेष रूप से तीसरे पक्ष के iframes या विज्ञापनों से बचने के लिए (मेरे ऐप कोई है) पॉप-अप खोलना मैंने घटना को touchend में बदलने की कोशिश की ("" लिंक में से एक के रूप में कहा गया है कि टचेंड ईवेंट से पहले व्यवहार करना जारी रखेगा "), लेकिन एक समान चेतावनी संदेश मिला।

और मेरे सवालों का:

  • कि केवल Chrome को प्रभावित करने यह कुछ है, या यह Android और iOS के लिए अपने वेब ऐप्लिकेशन (कॉर्डोबा/Phonegap के साथ) को प्रभावित करेगा?
  • touchstart को बदलने के लिए मुझे किस घटना का उपयोग करना चाहिए और अतीत में जिन मुद्दों का सामना करना पड़ा था उससे बचें? मैं click पर वापस जा सकता था, लेकिन तेजी से क्लिक/टैपिंग अभी भी एक समस्या होगी।

उत्तर

4

कॉर्डोवा ऐप बनाते समय, आप विभिन्न ओएस संस्करणों को लक्षित करते हैं, एंड्रॉइड 5 और ऊपर क्रोमियम के आधार पर स्वचालित रूप से वेबव्यू अपडेट कर रहे हैं, ताकि समस्या शायद आपके ऐप्स को प्रभावित करे।

लेकिन चूंकि क्रोम 32, इस व्यूपोर्ट <meta name="viewport" content="width=device-width"> का उपयोग करते समय, क्लिक विलंब दूर जाना चाहिए (this article देखें), ताकि आप सुरक्षित रूप से click ईवेंट का उपयोग कर सकें। एंड्रॉयड 5 और 6 पर नवीनतम WebViews क्रोमियम 52. पर आधारित होते हैं

तुम भी fastclick पुस्तकालय है कि "ठीक" होगा क्लिक में विलंब केवल जहां यह आवश्यक है का उपयोग कर सकते

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