0

外部の js コードを使用してバックグラウンド イメージを設定する際に問題が発生しています。これはjsのコードです:

$(document).ready()
{
mazdaArr = new Array();
    for (i=1;i<6;i++)
    {
        mazdaArr[i-1]= new Image();
        mazdaArr[i-1].src = 'mazda/mazda'+[i]+'.jpg';
    }   
    $('mainContent').css('background-image','url(/mazda/mazda4.jpg)');
    $('mainContent').css('background-image', 'url(' + mazdaArr[3].src + ')');
    console.log(mazdaArr[3].src);
}

コンソールで正しいリンクを確認でき、それをクリックすると、画像が新しいタグで開くため、すべてが正常に機能しますが、css属性です。それによって、htmlページからのjquery呼び出しは問題ないと思います。

ここで何が問題なのかわかりません...

4

1 に答える 1

2

いくつかのこと:

  • 文字列が整数 i ではなく、配列リテラルを連結しているようです。'string'+[]+'string'効果的にそうです'string' + new Array() + 'string'
  • のセレクターはmainContent、クラスまたは ID を検索する必要があるため、.mainContentまたは#mainContent.
  • 最後に、jQuery は要素の CSS をプロパティImageの新しい文字列で更新するだけなので、new をインスタンス化する必要はありません。background-image

試す

$(document).ready(function() {
    var mazdaArr = [],
        i = 0;
    for (i; i<5; i++) {
        mazdaArr[i] = 'mazda/mazda'+ i +'.jpg';
    }   

    $('#mainContent').css('background-image', 'url(' + mazdaArr[3] + ')');

    console.log(mazdaArr[3].src);
});
于 2013-10-30T15:17:17.823 に答える