3
$(document).ready(function(){
for(var i=1;i<5;i++){
    var pos = -411*i;
    var pospx = "{'background-position-x':'"+ pos.toString() + "px'}";
    $("#newsPix").delay(2000).animate(pospx, 1000);
    }
});

我是一个 jquery 初学者,我正在尝试使用动画精灵来制作类似于幻灯片的东西。我一直试图让这段代码工作几个小时,但我不确定问题在哪里!我检查了 HTML 和 CSS,它们看起来很好。我认为问题在于将值传递给 animate 方法或为 pospx 变量添加字符串。有任何想法吗?

4

1 回答 1

8

您正在传递一个字符串,一个对象会更合适,因为它是 animate() 接受的:

$(document).ready(function(){
    for(var i=1; i<5; i++){
        var pos   = -411*i,
            pospx = {'background-position-x' : pos};

        $("#newsPix").delay(2000).animate(pospx, 1000);
    }
});

background-position-x并非所有浏览器都支持。

于 2013-02-04T18:33:21.727 回答