基于JQuery的抓取博客园首页RSS的代码

Moswen 2011-12-01

效果图:
基于JQuery的抓取博客园首页RSS的代码
实现代码:

代码如下:

<!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"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
</head> 
<body> 
<table id='tbl1' cellpadding="1" cellspacing="1" bgcolor="#333333" width="800px" style="line-height:30px;"> 
<tr bgcolor="#FFFFFF"><td align="center" width="70%">标题</td><td align="center" width="30%">时间</td></tr> 
</table> 
<div id="loading" style="display:none"><font color='red'>正在加载数据。。。</font></div> 
</body> 
</html> 
<script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script language="javascript" type="text/javascript" > 
$(function(){ 
var html=""; 
var bgcolor=""; 
$.ajax({ 
url:"http://www.cnblogs.com/rss", 
type:"get", 
//dataType:($.browser.msie) ? "text" : "xml", 
success:function(data){ 
$("item",data).each(function(index,element){ 
bgcolor=index%2==0 ?" bgcolor='#F1F1F1' ":" bgcolor='#FFFFFF' "; 
html+="<tr "+bgcolor+"><td><a href='"+$(this).find("link").text()+"'>"+FormatContent($(this).find("title").text(),40)+"</td><td>"+ new Date($(this).find("pubDate").text()).format("yyyy-MM-dd hh:mm:ss");+"</td></tr>"; 
}); 
$("#tbl1 tr:not(':first')").remove();//移除非第一行 
$("#tbl1").append(html);//绑定数据到table 
}, 
complete:function(){ 
$("#loading").hide(); 
}, 
beforeSend:function(x){ 
//x.setRequestHeader("Content-Type", "charset=utf-8"); 
$("#loading").show(); 
}, 
error:function(){ 
alert("error"); 
} 
}); 
}); 
</script> 
<script language="javascript"> 
/** 
* 时间对象的格式化; 
*/ 
Date.prototype.format = function(format) { 
/* 
* eg:format="YYYY-MM-dd hh:mm:ss"; 
*/ 
var o = { 
"M+" :this.getMonth() + 1, // month 
"d+" :this.getDate(), // day 
"h+" :this.getHours(), // hour 
"m+" :this.getMinutes(), // minute 
"s+" :this.getSeconds(), // second 
"q+" :Math.floor((this.getMonth() + 3) / 3), // quarter 
"S" :this.getMilliseconds() 
// millisecond 
} 
if (/(y+)/.test(format)) { 
format = format.replace(RegExp.$1, (this.getFullYear() + "") 
.substr(4 - RegExp.$1.length)); 
} 
for ( var k in o) { 
if (new RegExp("(" + k + ")").test(format)) { 
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] 
: ("00" + o[k]).substr(("" + o[k]).length)); 
} 
} 
return format; 
} 
//格式化标题信息 
function FormatContent(word,length){ 
return word.length>length?word.substring(0,length)+"...":word; 
} 
</script>

相关推荐

安得情怀似旧时 / 0评论 2019-10-27
80417606 / 0评论 2007-03-06