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の初心者で、アニメーションのスプライトを使用してスライドショーに似たものを作成しようとしています。私はこのコードを何時間も機能させるように努めてきましたが、probelmがどこにあるのかわかりません!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 に答える