2013-01-10 15 views
11

मैं एक समारोह की जरूरत को चलाने के लिए जब एक divs डेटा-पेज सूचकांक विशेषता बदलता हैjQuery घटना

var active = $('.swipeview-active'), 
     dpi = parseInt(active.attr('data-page-index')), 
     left = $('[data-page-index="' +prev+ '"]').children("img").eq(0), 
     right = $('[data-page-index="' +next+ '"]').children("img").eq(0); 

    $(active.attr('data-page-index')).change(function(){ 

    right.clone(true). css({'z-index': 5}). fadeIn(2000).appendTo('#right'); 
    left.clone(true). css({'z-index': 5}). fadeIn(2000).appendTo('#left'); 
    }); 

मैं परिवर्तन() फ़ंक्शन की कोशिश की लेकिन केवल इनपुट क्षेत्रों के साथ काम करने के लिए लगता है कि,

$(active.attr('data-page-index')).change(function(){  

क्या यह प्राप्त करने का एक और तरीका है? धन्यवाद।

+0

मैं इस दूसरे दिन, http://meetselva.github.io/attrchange/ सुंदर सभ्य प्लगइन का इस्तेमाल किया। – christoshrousis

+0

यहां उत्तर दें http://stackoverflow.com/questions/16781778/detecting-attribute-change-of-value-of-an-attribute-i-made –

उत्तर

3

ऐसा लगता है कि आपको अभी भी घटना को ट्रिगर करने के लिए डीओएम में हेरफेर करना है? यदि ऐसा है, तो आप अन्य तत्वों के डेटा विशेषताओं में हेरफेर करने के बजाय एक छिपी हुई इनपुट के मूल्य का उपयोग कर सकते हैं। फिर आप change ट्रिगर का उपयोग कर सकते हैं।

var active = $('.swipeview-active'), 
     dpi = parseInt(active.attr('data-page-index')), 
     left = $('[data-page-index="' +prev+ '"]').children("img").eq(0), 
     right = $('[data-page-index="' +next+ '"]').children("img").eq(0), 
     dpiInput = $('.swipeview-active input:hide'); 

    dpiInput.change(function(){ 
    right.clone(true). css({'z-index': 5}). fadeIn(2000).appendTo('#right'); 
    left.clone(true). css({'z-index': 5}). fadeIn(2000).appendTo('#left'); 
    }); 

ट्रिगर:

$('.swipeview-active input:hide').val(1).trigger('change'); 
संबंधित मुद्दे