2013-02-05 53 views
26

मैंने जेनरेट किए गए पृष्ठों और फ्रेम के लिए live() का उपयोग किया। लेकिन jQuery 1.9 में यह फ़ंक्शन बहिष्कृत है और काम नहीं करता है।jQuery - "लाइव()" के बजाय "चालू()" विधि का उपयोग कैसे करें?

live() के बजाय on() का उपयोग करता हूं लेकिन यह विधि एक समय के लिए काम करती है, और फ्रेम में काम नहीं करती है।

मेरे कोड इस तरह दिखता है:

$("#element").live('click',function(){ 
    $("#my").html(result); 
    }); 

समाधान क्या है?

+6

[दस्तावेज़ पढ़ें] (http://api.jquery.com/on/)। इवेंट हैंडलर को डीओएम पेड़ को ऊपर उठाएं। –

+6

[.live() '] के लिए प्रलेखन (http://api.jquery.com/live/) में विशेष रूप से' .live() 'से' .on() 'में परिवर्तित करने के बारे में एक अनुभाग भी है। –

उत्तर

68
$('body').on('click', '#element', function(){ 
    $("#my").html(result); 
}); 

क्लिक किया तत्व चयनकर्ता अब .on() समारोह मापदंडों के माध्यम से पारित कर दिया है, और पिछले चयनकर्ता एक आईडी के साथ निकटतम माता पिता चयनकर्ता अधिमानतः के साथ प्रतिस्थापित किया जाना चाहिए। यदि आप नहीं जानते कि पेरेंट चयनकर्ता का उपयोग करने के लिए, body भी काम करता है, लेकिन कम कुशल है।

मौजूदा कोड माइग्रेट करने के तरीके पर jQuery 1.9 .live() is not a function देखें।

+0

इस उपयोगी उत्तर के लिए धन्यवाद, मेरे लिए काम किया। – Farhad

+0

thanx ... अच्छा जवाब ... –