如何在jquery中的每个循环中选择下一个li

时间:2013-07-22 13:45:41

标签: jquery slider

我想制作一个带有5个盒子的滑块,当每个盒子动画时,中间的一个变得更大,但我无法做到这一点。

以下是示例代码:

$(".mNext").click(function () {
  var boxCurrent = $(".mBox.current").data("index"),
      dir = $(".mBox:first").data("index");
  if (boxCurrent == boxLength) {
      goFirstBox();
  }
  $(".mBox").each(function (i) {
      var $item = $(this);
      $item.stop().animate({
          left: (dir === 1) ? '-=' + "170" + 'px' : '+=' + "170" + 'px'
      }, 600);
      if ($item.hasClass("mBig")) {

          $(this).removeClass("mBig");
          $(this).find("li:first").addClass("maBig");
      }
  });

如果你想要JSFiddle Link:http://jsfiddle.net/theOne623/hXBQ9/

1 个答案:

答案 0 :(得分:0)

您可以致电

进入下一个li
$(this).next();

你的小提琴的问题是你要将课程mBig添加到下一个li,所以当在each循环中找到下一个元素时,它也会找到它,删除它并将其添加到下一个。

而是保留对新li的引用,并在each循环结束后添加该类。

更新小提琴:http://jsfiddle.net/dh8uB/