0

我在弄清楚如何将 .animate left 函数转换为切换动画函数时遇到了一点麻烦,即单击一次动画左,再次单击动画右。

我现在使用的 jquery 是

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

我尝试将 .animate 更改为 .toggle,但它似乎不起作用,我不知道为什么,非常感谢任何帮助!

4

2 回答 2

1

尝试类似:

var goRight = true;
$("#right").click(function () {
    $("#img-slider").animate({left: goRight ? "+=50px" : "-=50px"}, "slow");
    goRight = !goRight;
});
于 2012-08-02T20:09:22.153 回答
1

A.toggle可以代替.click,而不是.animate。不过,这有点冗长。

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

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

于 2012-08-02T20:13:45.637 回答