通过for循环迭代x次函数

时间:2013-03-14 13:20:40

标签: javascript jquery

$('.ip_button').click(function(){
   var buttonValue, slideTimes;
   buttonValue = $(this).html();
   slideTimes = parseInt(buttonValue) - 1;
   for (var i = 0 ; i < slideTimes; i++) { 
          slider.gallery_next(); 
       }             
});

您好我正在尝试使用确定按钮-1的值并多次运行幻灯片的功能在滑块上滑动多个图像。不幸的是,无论按钮中有什么值,函数都只执行一次。目前按钮中的值为:

<button class="ip_button">5</button>

gallery_next()的功能;是封装的,如下所示:

this.gallery_next = function() {
    if (galleryRotating) { return; }
    galleryRotating = true;
    var elem = $(galleryId + " > li").first();
    $(galleryId).append(elem.clone());
    $(galleryId).animate({"left" : -imgWidth}, 650, function() {
        elem.remove();
        galleryRotating = false;
        $(galleryId).css({"left" : 0});
    });

1 个答案:

答案 0 :(得分:3)

animatefor循环再次调用该函数时不会完成,因此galleryRotation仍然为真,函数将不执行任何操作。你需要一个不同的方法:设置一个定时器来调用你的函数,比如700ms或者(更好)在你传递给animate的回调中再次调用旋转。