12

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

  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(){    

还有其他方法可以实现吗?谢谢。

4

1 回答 1

3

看来还是要操作 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');
于 2016-10-18T06:41:27.910 回答