基于Ajax模式的Blog Browser

只所以说成是Ajax,其实是我写成的代码,一不小心发现这就使传说中的Ajax模式。原来什么先进的东西,原来是这么平民化。 先说一下应用吧,背景是这样的:我有很多xml文件,作为单个xml文件,可以通过xml+xsl的形式进行浏览。例如,可以在浏览器中输入”http://marvel.hit.edu.cn:8080/weblogs/2004_8_23.xml”l来查看2004年8月23号的blog。问题是缺少我不知道我在哪些日子大发感慨,何况在浏览器中直接输入地址是一件很麻烦的事情。 于是,我需要做的事情是: 了解我写了哪些日记 获取这些日记 显然,第一件事情需要在服务器端完成,第二件事情是客户端浏览器完成的。 于是我先写了一个C程序,获得所有日志的信息,整合到一个xml文件中。(xml格式有利于客户端解析),代码在此 。执行之后生成的文件为list.xml。 之后,我在浏览器中就需要获得list.xml的信息,并且需要解析该文件。普通的方法不行,我需要使用XMLHttp请求(在Firefox中称之为XMLHttpRequest,而在ie中,这是一个ActiveX控件,叫做Microsoft.XMLHTTP)。 下载函数主要代码如下,详见源文件: [coolcode lang=”javascript”]function loadXMLDoc(url){// code for Mozilla, etc.if (window.XMLHttpRequest){xmlhttp=new XMLHttpRequest();}// code for IEelse if (window.ActiveXObject){xmlhttp=new ActiveXObject(“Microsoft.XMLHTTP”);} if (xmlhttp){xmlhttp.onreadystatechange=xmlhttpChange;xmlhttp.open(“GET”,url,true);xmlhttp.send(null);}}function xmlhttpChange(){if (xmlhttp.readyState!=4)return;// if “OK”if (xmlhttp.status==200 || xmlhttp.status==0){//Code Goes … Continue reading