2009-09-07 15 views
5

मैं लाइव() क्लिक फ़ंक्शन वाले नए < li> तत्व बना रहा हूं, लेकिन jquery मुझे नए बनाए गए तत्वों की अनुक्रमणिका नहीं बताएगा। यहां कोड है:लाइव फ़ंक्शन के भीतर किसी तत्व की अनुक्रमणिका ढूंढना

$esl = $('.dynamicLink'); 
    $esl.live('click',function(){ 
     var dynamicIndex = $esl.index(this); 
     alert(dynamicIndex); 
    }); 

जब भी मैं गतिशील लिंक पर क्लिक करता हूं, तो यह सूचकांक के रूप में "-1" देता है। कोई सुझाव?

उत्तर

7

क्योंकि live भविष्य के तत्वों के लिए घटनाओं को "बाध्य" करने के लिए ईवेंट प्रतिनिधिमंडल का उपयोग करता है, आपको तत्वों की एक अद्यतित सूची पर index पर कॉल करने की आवश्यकता है। इसे आज़माएं:

$esl = $('.dynamicLink'); 
$esl.live('click',function(){ 
    var dynamicIndex = $('.dynamicLink').index(this); 
    alert(dynamicIndex); 
}); 
संबंधित मुद्दे