1

jFeed を使用して RSS フィードを解析していますが、間隔ベースのチェックで変更を追跡する方法を考えています。以前の読み込みと比較して、フィードに新しい項目があるかどうかを効率的に確認するにはどうすればよいでしょうか? 残念ながら、RSS 2.0 の最終更新パラメーターは存在しないため、使用できません。

4

1 に答える 1

1

修正しました!次の解決策を参照してください。

//namespace for vars
$.feedentries = { 
    lastKnownEntry : ""
}; 

jQuery.getFeed({
    url: 'proxy.php?url='+encodeURIComponent(url),
    success: function(data) {
        //if new iterate through it until we've found the last know entry
        if(data.items[0].title!==$.feedentries.lastKnownEntry){
            var entries = "";
            $.each(data.items, function(i, feed) {
                if(feed.title!==$.feedentries.lastKnownEntry){
                    entries += '<div class="rss-entry">'+feed.title+'<div class="time"><a href="'+feed.link+'">'+feed.updated+"</a></div></div>\n";
                    //remove last element, prevents from overflowing
                    $(id+" .rss-entry:last-child").remove();
                } else {
                    //stop once we reach last known entry
                    return false;
                }
            });
            //insert into DOM
            $(id).prepend(entries);
            //write new last known rss title
            $.feedentries.lastKnownEntry = data.items[0].title;
        }
    }
});
于 2011-12-13T17:49:09.237 に答える