1

現在、ウェブサイトに div があり、6 秒ごとに異なる情報でフェードインおよびフェードアウトします。以前は、個別の div でハードコーディングしてから、それらを互いにフェードインおよびフェードアウトさせました。

しかし、特にデータは常に更新されるため、これは少しずさんな方法のように思えます。そのため、好きなときに簡単に更新できる XML ドキュメントを作成しました。

私が直面している問題は、jQuery を使用して XML ドキュメントをロードする方法がわからないことです -> 最初に選択 -> 6 秒待つ -> 2 番目の項目をロードしますか?

これまでのところ、私はこれを持っています。

function load_news(){
    $(".news").html("");
    $.ajax({
        url:'news.xml',
        dataType: 'xml',
        success: function(data) {
            $(data).find('news item').each(function() {
                var news = $(this).find("body").text();
                var news_img = $(this).find("img").text();
                $(".news").append("<div class='news'><div class='wrap'><div class='glare'></div><img src='img/news/"+news_img+".jpg'/><div class='name'>"+news+"</div></div></div>");
            });
        },
        error: function(){
            alert("Did not Find XML file");
        }
    });
}

しかし、ご覧のとおり、受信したデータをループさせる方法に固執していますか?

4

1 に答える 1

0

これらの2つのプロセスを分離します。

表示するアイテムのキューがあるものを作成します。タイマーに基づいて、次のアイテムを表示するだけです。キューが空の場合は、タイムアウト後に再試行してください。

新しいデータをフェッチしてキューを定期的にいっぱいにする別の関数を作成します-毎回利用可能なすべてのデータを取得します。

于 2012-11-01T14:20:32.853 に答える