जो दूसरों यहाँ प्राप्त कर जो jQuery स्रोत को संशोधित करने के लिए नहीं करना चाहते हैं ... (भगवान के प्यार के लिए ऐसा नहीं करते)
यह कस्टम घटनाओं को फायर करते समय < 9 में होता है। यदि आपके पास उस बिंदु तक पहुंचने से पहले घटना तक पहुंच है जहां यानी दुर्घटनाएं होती हैं, तो मूल मूल श्रृंखला को यात्रा करें और अंतिम एक = {} सेट करें;
नीचे कोड कोड है जब आप ईवेंट हैंडलर रिटर्न वैल्यू (false
) को श्रृंखला के नीचे कहीं भी संसाधित करने के लिए jQuery पर भरोसा कर रहे हैं। आप यहाँ घटना को रद्द करना चाहते हैं, तो टिप्पणियों को देखने - एक आज़माएं/कैच ब्लॉक
var handleAndFire = function(e) {
var ev = new $.Event('stack.overflow');
//you may have to debug and manually inspect to see how
//deep the originalEvents go
//or you could write your own function to traverse
//depth first and find it automatically, I'm lazy.
e.originalEvent.originalEvent = {}; //fix for ie < 9
ev.originalEvent = e;
$(document).trigger(ev);
}
$(document).click(handleAndFire);
आप एक जवाब के रूप में अपने संपादित जोड़ सकते हैं में
e.stopPropagation()
के लिए एक कॉल लपेट? –jquery-1.6.2.js फ़ाइल में, लाइन 3172, मैंने टिप्पणी की 'e.cancelBubble = true; 'और ' डाला गया अगर (टाइप करें e.cancelBubble! == 'अज्ञात') {e.cancelBubble = true; } '। दूसरे शब्दों में, मूल jquery फ़ाइल का मामूली संशोधन। – maan81
क्षमा करें। कोड जोड़ने के लिए चाहता था: टिप्पणी की - 'e.cancelBubble = true; 'और डाला -' अगर (टाइप करें e.cancelBubble! ==' अज्ञात ') {e.cancelBubble = true; } ' – maan81