1

我目前在我的网站上有一个 div,它每 6 秒左右使用不同的信息淡入和淡出。现在,以前我只是在单独的 div 中硬编码,然后让它们彼此淡入淡出。

但这似乎有点草率,特别是因为数据会不断更新,因此我制作了一个 XML 文档,我可以轻松地更新我喜欢的方式和时间。

我面临的问题是我不确定如何使用 jQuery 加载 XML 文档 -> 首先选择 -> 等待 6 秒 -> 加载第二项?

到目前为止,我有这个。

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

将这两个过程分开。

制作一个要显示的项目队列。根据计时器,只显示下一项。如果 Queue 为空,只需在超时后重试即可。

创建另一个函数,通过获取新数据定期填满队列 - 每次都获取所有可用数据。

于 2012-11-01T14:20:32.853 回答