Dec 4, 2007

Blogger中实时显示最新文章

Blogger提供的方法是用Feed供稿的方式,但其更新速度实在不敢恭维,于是很多人开始研究相应的Hack。以前说过实时显示最新评论,刚才搜了一下,也早有人给出了实时显示最新文章的方法。
作者:Abin |原文

我的代码如下:

<div id="newPosts">
Loading...
<noscript>failed!<br />Javascript not supported here!</noscript>
</div>
<script>
function handlePosts(json) {
function compareentry(a,b) {
order= Date.parse(a.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/, '$1/$2/$3 $4 GMT')) - Date.parse(b.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/, '$1/$2/$3 $4 GMT'));
return 0-order;
}
var temp = '<ul>';
var PostShow = 6;
var sortentry = json.feed.entry.sort(compareentry);
for (var i=0, Post; Post = sortentry[i]; i++) {
if (i >= PostShow)
break;
var title=Post.title.$t;
var link=Post.link[0].href;
var authorname=Post.author[0].name.$t;
var timestamp=Post.published.$t.substr(0,10);
temp += '<li><span class="item-title"><a href="'+link+'">'+ title +'</a></span></li>';
}
temp+="</ul>";
document.getElementById("newPosts").innerHTML = temp;
}
</script>
<script src="/feeds/posts/default?alt=json-in-script&callback=handlePosts" type="text/javascript">
</script>

0 comments:

Post a Comment