1. 使用XMLHttpRequest读取ajaxcn.org的RSS Feed(http://ajaxcn.org/exec/rss),并用HTML的列表标签(UL/OL/LI)列出获取的的Blog条目。
<!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=gb2312" />
<title>ajax_rss</title>
<script type="text/javascript">
var isIE = false;
function createAjaxObj(){
var httprequest;
if (window.XMLHttpRequest){ // if Mozilla, Safari etc
httprequest=new XMLHttpRequest();
if (httprequest.overrideMimeType){
httprequest.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject){ // if IE
try {
httprequest=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
}
}
return httprequest;
}
function ajaxshowme(){
ajaxinstance=createAjaxObj();
showStatus('正在获取信息……');
ajaxinstance.open("GET","http://ajaxcn.org/exec/rss", true);
ajaxinstance.onreadystatechange=alertcontents;
ajaxinstance.send(null);
}
function alertcontents(){
if (ajaxinstance.readyState == 4){ //if request of file completed
var node = ajaxinstance.responseXML.documentElement;
// Get Channel information
var channels = node.getElementsByTagName('channel');
var titles;
var links;
var result='';
var chanel;
result += '<ul>';
for(l=0; l<channels.length; l++){
channel = channels.item(0);
titles = channel.getElementsByTagName('title');
links = channel.getElementsByTagName('link');
title = titles.item(0).firstChild.data;
link1 = links.item(0).firstChild.data;
result += addItem1(title, link1);
result += '<ol>';
for(i=1;i<titles.length;i++){
title = titles.item(i).firstChild.data;
link1 = links.item(i).firstChild.data;
result += addItem1(title, link1);
}
result += '</ol>';
}
result += '</ul>';
document.getElementById('rssR').innerHTML = result;
showStatus('内容获取完成。');
}
}
function addItem1(title, link1){
var rslt='';
rslt += '<li>';
rslt += '<a href=/"'+link1+'/" target=/"_blank/" >'+title+'</a>';
rslt += '</li>';
return rslt;
}
function showStatus(s){
document.getElementById('status').innerText = s;
}
</script>
</head>
<body οnlοad="javascript:ajaxshowme();">
<p> <a href="javascript:ajaxshowme()">Contents of <strong>ajax.org</strong> RSS feed (点击更新)</a></p>
<div id="status" ></div>
<div id="rssR" ></div>
</body>
</html>
有兴趣的同学,自己手工制一个html文件吧。
自我感觉,刚刚算是达到了答题的标准。
只能在ie6里显示。