0

バックグラウンド スライドショーに素晴らしいプラグインjQuery BackStretchを使用しています。これは、画像を渡す一般的な方法です。

$.backstretch([
    "http://dl.dropbox.com/u/515046/www/outside.jpg", 
    "http://dl.dropbox.com/u/515046/www/garfield-interior.jpg", 
    "http://dl.dropbox.com/u/515046/www/cheers.jpg"
], {duration: 3000, fade: 750});

ただし、ハードコーディングによって画像を提供したくはありません。PHP がそのコンテナー内で生成するものを関数に取得させたいのです。これが私がこれまでに持っているものです。

var images = $('#background img').map(function() { return this.src; }).get();
$.backstretch([$images], {duration: 3000, fade: 750});

そして、それは明らかに機能しません - FireBug によると、可変イメージは定義されていません (?) 。ただし、変数を「警告」すると、画像のコンマ区切りの URL が表示されます。

私は何が間違っているのですか?ありがとうございました!

4

1 に答える 1

1

これで十分です。backstretch最初の引数は、画像への参照である文字列の配列であると想定しています。

$(document).ready(function () {
    var images = [];

    // iterate over your selection
    $('#background img').each(function () {
        // save source to list
        images.push(this.src);
    });

    // use plugin
    $.backstretch(images, {duration: 3000, fade: 750});
});

また、HTMLは次のようなものだと思います...

<div id="background">
    <img src="http://dl.dropbox.com/u/515046/www/outside.jpg" />
    <img src="http://dl.dropbox.com/u/515046/www/garfield-interior.jpg" />
</div>
于 2013-03-10T07:23:40.063 に答える