सटीक जेस्चर के लिए सटीक टच

M37 (08/2014 में स्थिर) से, Chrome के TouchEvents को लागू करने में बदलाव आया. इसकी वजह से, रिपोर्ट किए गए को-ऑर्डिनेट, पूर्णांक के बजाय फ़्लोट करते हैं.

पहले बाद में
ClientX: 167
clientY: 196
pageX:   167
pageY:   196
दायराX: 26
दायराY: 26
screenX: 167
स्क्रीनY: 277
क्लाइंटX: 167.33299255371094
clientY: 195.66700744628906
pageX: 167.33299255371094
पेजY: 195.66700744469.8906
667007444628906
667007446700744628906
pageX:

इस बदलाव के नतीजे का मतलब है कि आपकी उंगलियों के जेस्चर (हाव-भाव) पर आपकी प्रतिक्रिया बेहतर होती है. इससे आपको उंगलियों की पोज़िशन की सटीक जानकारी मिलती है.

रिक बायर्स के डेमो का इस्तेमाल करके, यह जाना जा सकता है कि धीरे-धीरे भंवर बनाने पर, कितना बड़ा बदलाव आ सकता है.

टच इवेंट में अंतर.

इसका असर सिर्फ़ उन स्क्रीन पर पड़ेगा जिनकी पिक्सल सघनता एक से ज़्यादा है. इसकी वजह जानने के लिए, आइए एक उदाहरण से इसे समझें.

मान लें कि आपके पास सीएसएस पिक्सल का 3x3 ग्रिड है और स्क्रीन की सघनता तीन है. इसका मतलब है कि हमारे पास 9x9 फ़िज़िकल पिक्सल का ग्रिड है और ऊपर बाईं ओर से नीचे दाईं ओर उपयोगकर्ता के जेस्चर दिखते हैं.

सीएसएस पिक्सल और स्क्रीन पिक्सल ग्रिड.

शुरुआत में, हम टच पोज़िशन को सबसे नज़दीकी सीएसएस पिक्सल के बराबर कर रहे थे. इसका मतलब है कि जेस्चर का इस्तेमाल करने पर, आपको यह तरीका अपनाना होगा.

जेस्चर के दौरान सीएसएस पिक्सल कितनी सटीक है.

हम कोई ऐसा बीच का चरण नहीं बना पाते हैं जो उपयोगकर्ता द्वारा अपनी उंगली घुमाने पर फ़िज़िकल पिक्सल दिखाने पर होता है.

अब जब हमने फ़्लोट पर स्विच कर लिया है, तो हमारा जेस्चर कुछ ऐसा दिख सकता है.

जेस्चर के दौरान फ़्लोट सटीक होना.

ज़्यादातर मामलों में, इसके लिए आपके कोड में किसी बदलाव की ज़रूरत नहीं होगी. हालांकि, इसका मतलब है कि TouchEvent की वजह से किया गया कोई भी ऐनिमेशन या मूवमेंट बेहतर होगा, खास तौर पर धीमे जेस्चर के लिए.

इस सुधार को मोबाइल Safari में भी लाने की योजना है: https://bugs.webkit.org/show_bug.cgi?id=133180.