我有问题。我有这个3060像素宽的图像作为我的背景图像,当我按下一个菜单链接时,我想要滑动'向右或向左的背景,但是当我这样做时,我只能使用X.如果我使用backgroundPositionX,它就不会做任何事情。但是当我使用backgroundPosition时,我只能提供1个参数。我只想对X方做一些事情,而不是Y.
我现在的代码会自动将Y设置为50%,这是不需要的。
function move(space) {
image = 3060;
bodyWidth = $('body').width();
offset = 900 * space;
if(image - offset < bodyWidth)
offset = image - bodyWidth - 15;
console.log(offset);
console.log(bodyWidth);
$('body').animate({
backgroundPosition: -offset
}, 5000, function() {
console.log("animate complete");
});
//$('body').css('backgroundPosition', '-'+offset+'px 0px');
}
答案 0 :(得分:0)
您需要同时放置x和y坐标才能使其正常工作。例: 假设你想在X上将背景位置从0px移动到500px。
$(somediv).animate({backgroundPosition: '500px 0px'})
假设背景原始位置为0px * 0px,这会将背景移动到X:500px和Y:0px。然后你可以像这样把它带回来:
.animate({backgroundPosition: '0px 0px'})