JQuery动画计算像素距离

我正在使用JQuery为面板系统菜单设置动画。问题是,有5个面板,我不能直接设置面板左:属性,因为它需要基于它的当前位置来计算它。我的脚本应该解释。

$('.panel').animate({left: '-250'}, 300);
所以这是好的,因为在第一次点击时,它将第一个面板从视图中滑出并将第二个面板滑动到视图中。然而,在第二个面板中单击时,它将不会滑动到第三个面板,因为它会告诉所有面板。面板移动到left:-250。我想让它解决当前剩下的问题:?是.panel,然后再添加一个-250进行动画。 这样,如果left:0我们在第一个面板上,点击一下,我们将转到left:-250。点击第二个面板,它将添加-250 + -250并为-500等生成动画...等等... 有任何想法吗?
已邀请:

dsit

赞同来自:

您需要使用偏移或偏移父级获取位置。 http://api.jquery.com/offset/ http://api.jquery.com/offsetParent/ 像这样的东西; (未测试)

    var offset = $('.panel').offset();
    alert(offset.left);
    alert(offset.top)
    var newpos = [offset.left - 250]
    $('.panel').animate({left: newpos}, 300);

要回复问题请先登录注册