実行結果
設置サンプルのソース
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="ja" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="imagetoolbar" content="no" />
<title>設置サンプル</title>
<link rel="stylesheet" type="text/css" href="/content/lib/global.css" />
<!-- JS -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" ></script>
<script type="text/javascript" src="/content/lib/jquery/jquery.masonry.js" ></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://www.google.com/jsapi?key=ABQIAAAAvABrzCnRluKK0Cj97fTMThTNR7aHVSEFb0WbViWwc6F-_w9PjBSogZu_7UgOTbx25ka46X-fnGmyvw"></script>
<script type="text/javascript">
google.load("feeds", "1");
function initialize(){
init("http://cocoism.tumblr.com/rss","feed","20"); // cocoism.tumblr.com
}
function init(feedurl,obj,feedmax) {
var feed = new google.feeds.Feed(feedurl);
feed.setNumEntries(feedmax);
feed.setResultFormat(google.feeds.Feed.XML_FORMAT);
feed.load(function(result) {
var blogtitle = result.xmlDocument.getElementsByTagName("title")[0].firstChild.nodeValue;
var bloglink = result.xmlDocument.getElementsByTagName("link")[0].firstChild.nodeValue;
$("#"+obj).append("<h2><a href='"+bloglink+"'>"+blogtitle+"</a></h2>");
if (!result.error) {
var items = result.xmlDocument.getElementsByTagName("item");
for (var i = 0; i < items.length; i++) {
// 記事タイトル
var title = items[i].getElementsByTagName("title")[0].firstChild.nodeValue;
// 記事リンク
var link = items[i].getElementsByTagName("link")[0].firstChild.nodeValue;
// 記事内容
var description = items[i].getElementsByTagName("description")[0].firstChild.nodeValue;
if(title==description){
$("#"+obj).append("<div class='box'><a href='"+link+"'>"+description+"</a></div>");
}else{
$("#"+obj).append("<div class='box'><h2><a href='"+link+"'>"+title+"</a></h2>"+description+"</div>");
}
}
}
});
}
google.setOnLoadCallback(initialize);
$(function(){
$('#feed').masonry({
columnWidth:240,
itemSelector: '.box'
});
});
</script>
<!-- CSS -->
<style type="text/css">
.box {
width:240px;
margin: 5px;
padding: 5px;
background: #D8D5D2;
font-size: 11px;
float: left;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
word-break: break-all;
}
.box h2 {
margin:0 0 5px 0; padding:0;
font-size:100%;
}
.box img {
width:240px;
}
</style>
<link rel="stylesheet" type="text/css" href="/common/css/example.css"></head>
<body id='example3' class='example'><div class="ads" style="margin:32px auto;text-align:center;"></div><h1 class='h'><a href='/'>PHP & JavaScript Room</a> :: 設置サンプル</h1>
<h3 class='h'>実行結果</h3>
<div id="wrap">
<h1>設置サンプル</h1>
<p>参照:<a href='http://desandro.com/resources/jquery-masonry/'>jQuery Masonry</a></p>
<p>▼TumblrのRSSフィードを読み込んで新着情報20件を表示</p>
<!-- CODE -->
<div id="feed" class="cf"></div>
<!-- / CODE -->
</div>
</body>
</html>