मैंने हाल ही में हमारी परियोजना की jQuery फ़ाइल को 1.4.2
से 1.4.4
में अपग्रेड किया है और ऐसा लगता है कि 1.4.3
जिस तरह से हम jQuery.data
का उपयोग कर रहे हैं, काम करना बंद कर दिया है।jQuery.data अब विंडो के साथ काम नहीं करता है?
var events = $(window).data('events');
if (events.scroll)
if (!events.scroll.include(handler))
$(window).scroll(handler);
उद्देश्य कई बार बाध्य किए जाने से इस विशेष हैंडलर को रोकने के लिए है:
हम इस कोड है।
1.4.2
में, यह ठीक काम करता है। 1.4.4
में, events
अपरिभाषित है।
function handler() {
//do something
}
$(document).ready(function(){
$(window).scroll(handler);
$('div#test').scroll(handler);
$(window).data('events') -> undefined
$('div#test').data('events') -> Object
});
इस एपीआई के साथ क्या बदल गया? मुझे window
के लिए ईवेंट कैसे सूचीबद्ध करना चाहिए?
मैं यह करने के लिए पहली पंक्ति को बदल दिया है:
var events = $(window).data('__events__').events;
थोड़ा गंदा दिखने, लेकिन सादा वस्तुओं के लिए घटनाओं तार करने की क्षमता सम्मोहक है।
आह! कोई भी जो वास्तव में xD +1 में वास्तविक समस्या चरणों का कुछ विचार करता है – Matchu