ड्रैग इवेंट्स ट्रैक करना
आपको यह ट्रैक करने की आवश्यकता है कि किन एलिमेंट्स पर dragenter और dragleave ट्रिगर हुए हैं। व्यक्तिगत एलिमेंट पर dragenter और dragleave सुनना न केवल उस एलिमेंट पर बल्कि चिल्ड्रन पर भी इवेंट्स को कैप्चर करेगा।
$.fn.draghover = function(options) {
return this.each(function() {
var collection = $(),
self = $(this);
self.on('dragenter', function(ev) {
if (collection.length === 0) {
self.trigger('draghoverstart');
}
collection = collection.add(ev.target);
});
self.on('dragleave drop', function(ev) {
collection = collection.not(ev.target);
if (collection.length === 0) {
self.trigger('draghoverend');
}
});
});
};
इवेंट्स सुनें
$(window).draghover().on({
'draghoverstart': function() {
alert('dragged into the window');
},
'draghoverend': function() {
alert('dragged out of window');
}
});
यह पैटर्न विंडो सीमाओं पर ड्रैग एंट्री/एग्जिट का विश्वसनीय रूप से पता लगाता है।