jQuery Animate和定位元素

时间:2012-08-06 14:49:44

标签: javascript jquery html

我目前有一个div,左边有5张左右的图像,所以它们是并排的。现在我在父div中有这个div,溢出:隐藏和宽度,这样它只能容纳4个图像。

除了动画之外,一切都很好,我左右两个箭头,但是让我说我​​按两次它会像正常情况一样向右移动然后当我按下左边一旦它重置div正常位置并继续,

$(".next").click(function(){
    $(".item_wrap").animate({right: "+=118px"}, 1500 );
    return false;
});
$(".prev").click(function(){
    $(".item_wrap").animate({left: "+=118px"}, 1500 );
    return false;
});

这是我目前使用的代码。

1 个答案:

答案 0 :(得分:2)

  

...但是让我说我​​按两次它会像正常情况一样向右移动然后当我按下左键时它会重置div正常位置并继续

那是因为你不能在同一个元素上设置leftright的动画,除非你真的想让元素伸展(尽管你已经在你的情况下它不会延伸可能设置一个静态元素宽度。)而是通过添加和减去:

为其中一个设置动画
$(".next").click(function(){
    $(".item_wrap").animate({right: "+=118px"}, 1500 );
    return false;
});
$(".prev").click(function(){
    // Subtract from 'right' instead of adding to 'left'
    $(".item_wrap").animate({right: "-=118px"}, 1500 );
    return false;
});