2017-02-07 7 views
12

मैं Framework7 sortable list का उपयोग कर रहा हूं और यह अच्छी तरह से काम करता है, बस यह सूची बदलते समय किसी ईवेंट को ट्रिगर नहीं करता है।निष्क्रिय घटना श्रोता के अंदर डीफॉल्ट को रोकने में असमर्थ

तो मैं कोशिश कर रहा हूँ कुछ बिल्ट-इन घटनाओं:

$('.sortable-handler').on('touchstart', function (e) { 
    e.preventDefault(); 
    alert('touchstart'); 
}); 

$('.sortable-handler').on('touchmove', function (e) { 
    e.preventDefault(); 
    console.log('touchmove'); 
}); 

$('.sortable-handler').on('touchcancel', function (e) { 
    e.preventDefault(); 
    console.log('touchcancel'); 
}); 

$('.sortable-handler').mouseleave(function (e) { 
    e.preventDefault(); 
    console.log('mouseleave'); 
}); 

.. लेकिन सभी मैं मिलता है:

लक्षित करने के लिए निष्क्रिय घटना श्रोता अंदर preventDefault करने में असमर्थ होने के कारण इलाज किया जा रहा निष्क्रिय के रूप में। https://www.chromestatus.com/features/5093566007214080

मैं के लिए कौन सा घटना देखना चाहिए हर प्रकार पर अद्यतन सूची प्राप्त करने के देखते हैं?

उत्तर

1

Framework7 में sortable सूची को संभालने के लिए जब वर्तमान में नई स्थिति में तत्व छँटाई उपयोगकर्ता रिहाई, तो आप इस कोड का उपयोग कर सकते हैं:

$$('li').on('sortable:sort',function(event){ 
    alert("From " + event.detail.startIndex + " to " + event.detail.newIndex); 
    }); 

फिडल: https://jsfiddle.net/0zf5w4y7/

+0

आह आदमी, आप इस घटना के बारे में कैसे जानते थे? इसका उल्लेख उनके दस्तावेज में नहीं है। – 3zzy

+0

उनके पास है। उन्होंने पृष्ठ के निचले हिस्से में इसका उल्लेख किया। प्रलेखन https://framework7.io/docs/sortable-list.html#sortable-events –

16

इस blog post देखें। यदि आप preventDefault पर प्रत्येक touchstart पर कॉल कर रहे हैं तो आपके पास .sortable-handler { touch-action: none; }

+0

परफेक्ट, थैक्स देखें। यह वही है जो मैं खोज रहा था। –

+0

@ रिक बॉयर्स, मैं 'व्हील मूसहेल डोममोउसस्क्रॉल' – Syed

+0

@ रिक बेयर्स के लिए 'preventDefault() 'कैसे जोड़ सकता हूं। क्या आप एक उदाहरण प्रदान कर सकते हैं? मुझे jquery मोबाइल 'स्वाइप' ईवेंट के साथ एक ही समस्या है – tonkihonks13

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