<script language="JavaScript" type="text/javascript">
var xmlFile="http://xling.blueidea.com/rss2.xml";
var createXMLDom=function(){
if (window.ActiveXObject)
var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
else
if (document.implementation&&document.implementation.createDocument)
var xmldoc=document.implementation.createDocument("","doc",null);
xmldoc.async = false;
//为了和FireFox一至,这里不能改为False;
xmldoc.preserveWhiteSpace=true;
return xmldoc;
}
var createXMLHttp=function(){
var xmlHttp;
if (window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttp=new XMLHttpRequest();
}
return xmlHttp;
}
//-----------------------------------------------------------------------------
//加载XML文件。
var xmlDom=createXMLDom();
try{
xmlDom.load(xmlFile);
}catch(e){
var xmlHttp=createXMLHttp();
xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState == 4){
xmlDom=xmlHttp.responseXML;
}else{
//window.state="XML文件加载中...";
}
}
xmlHttp.open("GET",xmlFile,false);
xmlHttp.send(null);
}
var DOMRoot=xmlDom.documentElement;
//取出指定节点的属性。
var getDOMAtt=function(pNode,pAttribute){
try{
return pNode.attributes.getNamedItem(pAttribute).nodeValue;
}catch(e){
//alert("指定节点不存在,或指定属性:"+pAttribute+" 不存在!")
return false;
}
}
var attList=function(pNode){
if(pNode.nodeType == 4) return '';
var oAtt,tmpString="[ ";
try{
for(var i=0;oAtt=pNode.attributes[i];i++){
tmpString+=oAtt.nodeName+" = '" + oAtt.nodeValue+"' ";
}
tmpString+=" ]"
return tmpString;
}catch(e){ return ''}
}
var getNodeName = function(pNode){
if(pNode.nodeType == 4) return '';
return pNode.nodeName;
}
var getNodeValue = function(pNode){
try{
return " : " + pNode.firstChild.nodeValue;
}catch(e){return ''}
}
var nbsp=function(pNum){
var tmpString=""
for(var i=0;i<pNum;i++){
tmpString+=" "//这里是全角的空格
}
return tmpString;
}
var switchTree=function(pNode,pLevel){
var tNode,i;
for(i=0;tNode=pNode.childNodes[i];i++){
if(tNode.nodeType==3) continue;//因为preserveWhiteSpace等于true
document.write(nbsp(pLevel),"<font color='blue'><b>",getNodeName(tNode),"</b></font><font color='red'>",attList(tNode),"</font>",getNodeValue(tNode),"<br />");
switchTree(tNode,pLevel+1);
}
}
switchTree(DOMRoot,2)
</script>
</html>
发表评论
-
没事写个JSON
2010-04-02 10:28 1148JS方法: <html> <head> ... -
xml
2008-12-18 13:11 1016<body><div id=x> ... -
ajax遍历xml文档
2008-12-18 12:54 1586XMLHttpRequest对象提供了两个可以用来访问服务器响 ... -
一dwr例子
2008-09-02 21:27 1144HelloTest.java: package com. ... -
Google发布AJAX框架 Google Web Toolkit
2006-05-30 00:51 1205Google Web Toolkit是一个开放版本的AJAX ... -
Ajax框架汇总
2006-07-08 16:49 928原始出处: 1 Bindows (from 2003) ... -
AJAX框架之Bindows
2006-07-09 15:38 1055创建日期:2004年7月8日 作 者:Ilan Zisser ... -
调查一下大家在用的AJAX框架
2006-10-28 03:32 979调查一下大家在用的AJAX框架,根据投票结果会整理一些相关的讨 ... -
Dojo推出0.4.0
2006-10-31 15:42 883今天在坛子里,看到有朋友用到了Dojo 0.4.0,遂上Doj ... -
JavaScript编程规范(Javascript Programming Conventions)
2006-12-16 04:24 1020在dojo上看到一篇有关JavaScript编程规则的文章,供 ... -
JsEasy简介
2007-02-19 03:34 974JsEasy简介 JsEasy是什么? JsEa ... -
WediaAjax诚挚邀请大家一起帮忙写Demo
2007-03-24 07:45 875大家好,发这篇文章的目的是希望能认识到更多的朋友,并帮助我一起 ... -
Dojo 0.4.2发布
2007-04-04 15:40 962在3月20日,Dojo发布了 0.4.2版本,这是对Dojo ... -
Dojo做的站点
2007-04-12 03:09 10371,TitlePane 首页点击“折叠评论”后,弹出详细内容 ... -
Ajax DWR 框架 util.js 文件学习整理
2007-04-23 09:36 1346Ajax DWR 框架 util.js 文件学习整理 util ... -
Brocade: visita效果的Ajax演示程序
2007-04-25 12:37 984visita效果的Ajax演示程序,支持firefox1.0、 ... -
桌面论坛“百工”Alpha1.0 和 桌面 Blog 版开始公测
2007-04-25 13:39 884由“百工”工作室强力打造的桌面Blog和桌面论坛,现在开始公测 ... -
WediaAjax Pro1.0 has been published as an open source project
2007-05-07 13:01 913Hi everyone, WediaAjax is a sma ... -
JSI2Alpha及JSA1beta 发布
2007-06-29 04:55 888原文见:
评论