一旦满足某些条件就停止动画 - Jquery

时间:2013-06-27 12:21:05

标签: javascript jquery css jquery-animate margin

我希望一旦匹配特定条件就停止动画制作。

我有

var $box2 = $('.column'),
    Width = max_x,
    cursor = 0;
var Width = $("#column").width();
console.log(divWidth)


$("#right-button").click(function () {
    if (cursor != Width && Width >= divWidth) {
        $box2.animate({
            marginLeft: "-=100"
        }, "fast");

        cursor += 300;
    }
});

我将滚动条设置为动画 - 0r +300取决于点击。我想在这里写一个条件,比如当前宽度大于总宽度,停止动画。

尝试cursor != totalWidth && totalWidth >= divWidth && this.width > totalWidth,但没有工作。如何在动画时找到当前宽度?我该怎么办?

1 个答案:

答案 0 :(得分:0)

尝试使用步骤回调:

$box2.animate({
    marginLeft: "-=100"
}, {
    step: function (now, fx) {
        if (cursor != totalWidth && totalWidth >= divWidth) $(this).stop();
    }
}, "fast");