沿所有体宽移动div

时间:2014-02-24 18:47:51

标签: jquery html

我必须沿着我身体的整个长度移动一张照片。所以这是我写的代码:

function moveRight(){
   $("#b").animate({left: "+=400"}, $("body").width(),moveLeft)
}

function moveLeft(){
   $("#b").animate({left: "-=400"}, $("body").width(),moveRight)
}

$(document).ready(function() {
   moveRight();
});

你可以找到一个工作小提琴here。我在小提琴中使用随机图片,但正如你所看到的那样,它会离开屏幕。

我想在身体结束前(右侧)停止。我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

您可以使用父级图片容器宽度计算left参数值:

function moveRight(){
   $("#b").animate({
       left: $("#b").parent().width() - $("#b").width()
     },
     $("body").width(),
     moveLeft
   );
}

对于左侧,您可以使用0代替。

function moveLeft(){
    $("#b").animate({left: "0"}, $("body").width(),moveRight)
}

JSFIDDLE

答案 1 :(得分:1)

而不是静态400px你可以$('body').width() - 200

200是图像的宽度。