प्रदर्शन न्यूनतम कोड
प्लगइन्स की आवश्यकता है और पुस्तकालयों कई संबंधित समस्याओं को हल करने के क्रम में के रूप में लचीला और संभव के रूप में सामान्य हो सकता है, लिखा जा करने के लिए है "ताज़ा करने के लिए खींच" पहचान करने के लिए चाहते हैं। इसका मतलब यह है कि प्रदर्शन की प्रभाव डालने के कारण वे हमेशा आपकी आवश्यकता से अधिक थोक होंगे। इसका मतलब यह भी है कि आपको उस कोड को बनाए रखना कभी नहीं होगा। वह व्यापार बंद है।
यदि प्रदर्शन आपका लक्ष्य है, तो इसे स्वयं बनाएं।
चूंकि आपको केवल एक पुल-डाउन डिटेक्शन की आवश्यकता है, एक सरल स्वाइप डिटेक्टर बनाएं। बेशक, आपको इसे अपनी आवश्यकताओं, और घटना-गुणों, ओएस और ब्राउज़र के ईवेंट-ट्रिगर्स को लक्षित करना होगा, जिन्हें आप लक्षित कर रहे हैं।
मेरे पुराने js-minimal-swipe-detect
var pStart = {x: 0, y:0};
var pStop = {x:0, y:0};
function swipeStart(e) {
if (typeof e['targetTouches'] !== "undefined"){
var touch = e.targetTouches[0];
pStart.x = touch.screenX;
pStart.y = touch.screenY;
} else {
pStart.x = e.screenX;
pStart.y = e.screenY;
}
}
function swipeEnd(e){
if (typeof e['changedTouches'] !== "undefined"){
var touch = e.changedTouches[0];
pStop.x = touch.screenX;
pStop.y = touch.screenY;
} else {
pStop.x = e.screenX;
pStop.y = e.screenY;
}
swipeCheck();
}
function swipeCheck(){
var changeY = pStart.y - pStop.y;
var changeX = pStart.x - pStop.x;
if (isPullDown(changeY, changeX)) {
alert('Swipe Down!');
}
}
function isPullDown(dY, dX) {
// methods of checking slope, length, direction of line created by swipe action
return dY < 0 && (
(Math.abs(dX) <= 100 && Math.abs(dY) >= 300)
|| (Math.abs(dX)/Math.abs(dY) <= 0.3 && dY >= 60)
);
}
document.addEventListener('touchstart', function(e){ swipeStart(e); }, false);
document.addEventListener('touchend', function(e){ swipeEnd(e); }, false);
स्रोत
2017-09-15 22:14:17
'नहीं चल रहे हैं मदद कर सकता है? अक्सर पर्याप्त खींच नहीं है? पुल बहुत लंबा लगता है? यदि उत्तरार्द्ध, संभावना है हार्डवेयर हार्डवेयर –
है यह हमेशा थोड़ा झटके। 100% मूल भावना नहीं है। – Peter
यदि आप चाहते हैं, तो अधिक कोड प्राप्त न करें, आप स्वाइप जेश्चर सूचीकार – GeekWithGlasses