转动.animate({“left”:“+ = 50px”},“慢”);功能切换为左 - 右切换

时间:2012-08-02 20:05:33

标签: jquery jquery-ui jquery-animate toggle

我在确定如何将.animate左侧函数转换为toggeled animate函数时遇到一些麻烦,即点击一次动画左侧,再次点击动画右侧。

目前使用的jquery是

$("#right").click(function(){
  $("#img-slider").animate({"left": "+=50px"}, "slow");
});

我尝试将.animate改为.toggle,但它似乎工作,我不知道为什么,任何帮助非常赞赏!

2 个答案:

答案 0 :(得分:1)

尝试类似:

var goRight = true;
$("#right").click(function () {
    $("#img-slider").animate({left: goRight ? "+=50px" : "-=50px"}, "slow");
    goRight = !goRight;
});

答案 1 :(得分:1)

.toggle可以取代.click,而不是.animate。但是,这有点冗长。

$("#right").toggle(function () {
  $("#img-slider").animate({"left": "+=50px"}, "slow");
}, function () {
  $("#img-slider").animate({"left": "-=50px"}, "slow");
});

另外,请注意在动画运行时单击#right时会发生什么;根据所需的行为,可能需要.stop