属性更改时的jQuery事件

属性更改时的jQuery事件,jquery,html,Jquery,Html,我需要一个函数在divs数据页索引属性更改时运行 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(

我需要一个函数在divs数据页索引属性更改时运行

  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');
    });
我尝试了change()函数,但它似乎只适用于输入字段

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

有没有其他方法可以做到这一点?谢谢。

您似乎仍然需要操纵DOM来触发事件?如果是这样,您可以操纵隐藏输入的值,而不是操纵其他元素的数据属性。然后可以使用
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');
前几天我用过这个,相当不错的插件。在这里检查答案