के साथ "टैप" ईवेंट कैप्चर करें मैं शुद्ध जेएस के साथ उपयोगकर्ता के "टैप" ईवेंट को कैप्चर कैसे कर सकता हूं? दुर्भाग्यवश, मैं किसी भी पुस्तकालय का उपयोग नहीं कर सकता।शुद्ध जावास्क्रिप्ट
उत्तर
click
ईवेंट माउस क्लिक के साथ-साथ टच क्लिक पर ट्रिगर किया गया है।
touchstart
ईवेंट स्पर्श होने पर ईवेंट ट्रिगर किया जाता है।
touchend
ईवेंट टच समाप्त होने पर ट्रिगर होता है। यदि डिफ़ॉल्ट कार्रवाई को रोका जाता है, तो click
ईवेंट ट्रिगर नहीं होगा।
यह मेरा कोड नहीं है लेकिन मुझे याद नहीं है कि मुझे यह कहां से मिला, सफलतापूर्वक उपयोग किया गया। यह jQuery का उपयोग करता है लेकिन टैप हैंडलिंग के लिए कोई अतिरिक्त पुस्तकालय या प्लगइन्स नहीं।
$.event.special.tap = {
setup: function(data, namespaces) {
var $elem = $(this);
$elem.bind('touchstart', $.event.special.tap.handler)
.bind('touchmove', $.event.special.tap.handler)
.bind('touchend', $.event.special.tap.handler);
},
teardown: function(namespaces) {
var $elem = $(this);
$elem.unbind('touchstart', $.event.special.tap.handler)
.unbind('touchmove', $.event.special.tap.handler)
.unbind('touchend', $.event.special.tap.handler);
},
handler: function(event) {
event.preventDefault();
var $elem = $(this);
$elem.data(event.type, 1);
if (event.type === 'touchend' && !$elem.data('touchmove')) {
event.type = 'tap';
$.event.handle.apply(this, arguments);
} else if ($elem.data('touchend')) {
$elem.removeData('touchstart touchmove touchend');
}
}
};
$('.thumb img').bind('tap', function() {
//bind tap event to an img tag with the class thumb
}
मैं iPad के लिए विशेष रूप से एक परियोजना के लिए इस प्रयोग किया जाता है, तो डेस्कटॉप और टेबलेट के लिए एक साथ काम करने में सुधार करने की आवश्यकता हो सकती।
यह कोड नियमित क्लिक हैंडलर – Kayo
का उपयोग करके प्राप्त टैप अंतराल को भी रोकता है, यह शुद्ध जेएस नहीं है जैसा कि आप इंगित करते हैं, इसलिए यह प्रश्न का उत्तर नहीं देता है। –
वहाँ touchstart
, touchend
और अन्य घटनाओं रहे हैं। आप इस तरह से उनके लिए घटना श्रोताओं जोड़ सकते हैं: देशी डोम घटनाओं आप MDN webstite पर पा सकते हैं के बारे में
var el = document.getElementById('test');
el.addEventListener('touchstart', touchHandler);
में अधिक जानकारी।
मैंने खुद को एक छोटी लिपि लिखी। यह शुद्ध-जेएस में नहीं है, लेकिन मेरे लिए ठीक काम करता है। यह स्क्रॉलिंग पर स्क्रिप्ट को निष्पादित करने से रोकता है, जिसका अर्थ है कि स्क्रिप्ट केवल 'टैप' ईवेंट पर आग लगती है।
$(element)
.on('touchstart', function() {
$(this).data('moved', '0');
})
.on('touchmove', function() {
$(this).data('moved', '1');
})
.on('touchend', function() {
if($(this).data('moved') == 0){
// HERE YOUR CODE TO EXECUTE ON TAP-EVENT
}
});
प्रश्न "शुद्ध जेएस" और "मैं किसी पुस्तकालय का उपयोग नहीं कर सकता" के बारे में स्पष्ट है – ByScripts
यह यहां मेरी मदद कर रहा है ... –
- 1. शुद्ध जावास्क्रिप्ट
- 2. jQuery-नहीं शुद्ध जावास्क्रिप्ट
- 3. आईडी शुद्ध जावास्क्रिप्ट
- 4. शुद्ध जावास्क्रिप्ट में डीओएम कार्यान्वयन?
- 5. नेटबीन में शुद्ध-जावास्क्रिप्ट परियोजनाएं?
- 6. शुद्ध जावास्क्रिप्ट - कुकी में स्टोर ऑब्जेक्ट
- 7. शुद्ध जावास्क्रिप्ट ऐप + अमेज़ॅन एस 3?
- 8. शुद्ध एचटीएमएल + जावास्क्रिप्ट क्लाइंट साइड टेम्पलेटिंग
- 9. शुद्ध सीएसएस
- 10. शुद्ध सीएसएस
- 11. शुद्ध जावास्क्रिप्ट एक फॉर्म के बिना पोस्ट डेटा भेजता है
- 12. डीओएम में तत्वों को केवल शुद्ध जावास्क्रिप्ट (कोई jQuery)
- 13. सबसे तेज़, शुद्ध जावास्क्रिप्ट, ग्राफ विज़ुअलाइज़ेशन टूलकिट क्या है?
- 14. HTTP मूल प्रमाणीकरण के लिए शुद्ध जावास्क्रिप्ट कोड?
- 15. शुद्ध पायथन पर्यावरण में जावास्क्रिप्ट को निष्पादित करना
- 16. शुद्ध सी
- 17. शुद्ध PHP
- 18. शुद्ध .NET
- 19. शुद्ध PHP
- 20. शुद्ध क्लाइंट
- 21. शुद्ध सी
- 22. शुद्ध पायथन
- 23. शुद्ध विधानसभा
- 24. शुद्ध सी
- 25. "शुद्ध उपयोग"
- 26. शुद्ध जावा
- 27. शुद्ध सी
- 28. शुद्ध रूबी
- 29. शुद्ध रूबी
- 30. शुद्ध सीएसएस छवि थंबनेल
यह टैग किया गया सीएसएस क्यों है? –
गति की वजह से। माफ़ कीजिये। –