のんびりいこう

宝塚歌劇・ミュージカルときどきWEBデザイナーの徒然日記。a-blog cmsをカスタマイズする時の覚書。脳脊髄液減少症・リウマチと闘い中!

別ページの新着RSSフィードをGoogle AJAX Feed APIで取得しトップページに新着タイトルを表示させタイトルに一定期間new表示をさせる

別ページの新着RSSフィードをGoogle AJAX Feed APIで取得しトップページに新着タイトルを表示させる。
そして、このタイトルに一定期間new表示させるスクリプトの覚書。

<body>
<p>
<h3>記事一覧</h3>
<div id="container">Loading...</div>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("feeds","1");
google.setOnLoadCallback(function(){
(function(container,url){
 var feed = new google.feeds.Feed(url);
 feed.setNumEntries(10);
 feed.setResultFormat(google.feeds.Feed.JSON_FORMAT);
 feed.load(function(result){
  if(result.status.code=="200"){

   while(container.hasChildNodes())
   container.removeChild(container.firstChild); 

   var ul = document.createElement("ul");
   ul.style.listStyleType = 'none';

   for(var i=0;i<result.feed.entries.length;i++){

   var d = new Date(result.feed.entries[i].publishedDate);
   var today = new Date();

   var li = document.createElement("li");
   var a = document.createElement("a");

   a.href = result.feed.entries[i].link;
   a.appendChild(document.createTextNode(result.feed.entries[i].title));
   li.appendChild(a);
   li.appendChild(document.createTextNode(
    "("+ (d.getFullYear()-2000)+"/"+(d.getMonth()+1)+"/"+d.getDate()+")"
   ));

   var newspan= document.createElement("span");
   newspan.appendChild(document.createTextNode(' New!'));
   newspan.style.color="red",newspan.style.fontWeight = "bold";

   if((today.getTime()-d.getTime()) < 3*24*3600*1000) //←何日間表示したいか指定
    li.appendChild(newspan);

   li.normalize();
   ul.appendChild(li);

   }
   container.appendChild(ul);
  }
 });
})(document.getElementById("container"),
  "http://******.com/rss15.xml"); //←表示させるRSS
});
</script>
</p>
</body>

今回の場合はul等をcssで管理しているのでその箇所は削除しています。

某サイトに質問して某氏が教えて下さいました。
有難うございました<(_ _)>


エントリーリスト

カテゴリーリスト

タグクラウド