js加载XML文件

时间:2022-10-27 07:48:36
// XML文件
<?xml version="1.0" encoding="gb2312"?>
<root>
<father name="菜单一">
<Child url="right.html" enable="false">子项1</Child>
<Child url="right.html" enable="false">子项2</Child>
<Child url="right.html" enable="false">子项3</Child> </father>
<father name="菜单二">
<Child url="right.html" enable="false">子项3</Child>
<Child url="right.html" enable="false">子项4</Child>
</father> </root> // js 文件
<!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>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" language="JavaScript" src="js/jquery.js"></script> <script type="text/javascript">
$(function(){
//导航切换
$(".menuson li").click(function(){
$(".menuson li.active").removeClass("active")
$(this).addClass("active");
}); $('.title').click(function(){
var $ul = $(this).next('ul');
$('dd').find('ul').slideUp();
if($ul.is(':visible')){
$(this).next('ul').slideUp();
}else{
$(this).next('ul').slideDown();
}
});
})
</script> </head> <body style="background:#f0f9fd;">
<div class="lefttop"><span></span>菜 单</div> <dl id="leftmenu" class="leftmenu">
<SCRIPT>
var xmlDom = null;
if (window.ActiveXObject) {
alert("aa");
xmlDom = new ActiveXObject("Microsoft.XMLDOM");
//xmlDom.loadXML(xmlFile);//如果用的是XML字符串
xmlDom.load(LeftXML.xml); //如果用的是xml文件。
} else if (document.implementation && document.implementation.createDocument) {
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET", "LeftXML.xml", false);
xmlhttp.send(null);
xmlDom = xmlhttp.responseXML.documentElement;//一定要有根节点(否则google浏览器读取不了)
} else {
xmlDom = null;
} var finallyArray="";
for (var i = 0; i < xmlDom.getElementsByTagName("father").length; i++) { var menuString = xmlDom.getElementsByTagName("father")[i].attributes[0].value; finallyArray += "<dd><div class='title'><span><img src='images/leftico02.png' /></span>" + menuString + "</div><ul class='menuson'>"; for (var j = 0; j < xmlDom.getElementsByTagName("father")[i].getElementsByTagName("Child").length; j++) {
var _childfirst = xmlDom.getElementsByTagName("father")[i].getElementsByTagName("Child")[j].textContent;
var _childsecond = xmlDom.getElementsByTagName("father")[i].getElementsByTagName("Child")[j].attributes[0].value;
var _childsecond = xmlDom.getElementsByTagName("father")[i].getElementsByTagName("Child")[j].attributes[1].value; finallyArray = finallyArray + "<li><cite></cite><a href=" + _childsecond + " target='rightFrame'>" + _childfirst + "</a><i></i></li>";
}
finallyArray += "</ul></dd>";
}
document.getElementById("leftmenu").innerHTML = finallyArray;
</SCRIPT>
</dl>
</body>
</html>

  

js加载XML文件的更多相关文章

  1. 通过JS加载XML文件,跨浏览器兼容

    引言 通过JS加载XML文件,跨多种浏览器兼容. 在Chrome中,没有load方法,需要特殊处理! 解决方案 部分代码 try //Internet Explorer { xmlDoc=new Ac ...

  2. js便签笔记(8)——js加载XML字符串或文件

    1. 加载XML文件 方法1:ajax方式.代码如下: var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObje ...

  3. 通过 XML HTTP 加载 XML 文件

    新建一个.aspx文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="02-通 ...

  4. dom4j加载xml文件

    ## dom4j加载xml文件 ``` // 1. 加载xml文件 InputStream is = MyTest.class.getResourceAsStream("user.xml&q ...

  5. 解决dom4j加载xml文件性能慢的问题

    在代码中使用: 1: DocumentHelper.parseText 2: SAXReader reader = new SAXReader(); Document extdocument = re ...

  6. java中加载xml文件方法

    this.getclass().getclassloader().getresourceasstream(String file); 可以加载文件,比如xml.

  7. 使用TreeView加载XML文件

    PS: 由于小弟初学编程,本文只写实现方式,代码写的不是很好请见谅! 1.需要读取的xml文档内容 2. 最终实现效果 3  貌似看起实现起来很复杂 但是想想还是挺简单 思路:  读取XML文档 →获 ...

  8. tomcat与springmvc 结合 之---第19篇 springmvc 加载&period;xml文件的bean 过程

    writedby 张艳涛,看springmvc 的源码太难了,怎么办, 这篇文章主要分析了看透springmvc的第9章结尾的 如何解析xml 命名空间标签 <?xml version=&quo ...

  9. 又一本springmvc学习指南 之---第22篇 springmvc 加载&period;xml文件的bean标签的过程

    writedby 张艳涛,今天看spring mvc 学习指南的第2章,特意提下这个作者是how tomcat works 俩个作者之一, 喜欢上一本书的风格,使用案例来讲述原理, 在做第一个案例的时 ...

随机推荐

  1. Restore Volume 操作 - 每天5分钟玩转 OpenStack(60)

    前面我们 backup 了 voluem,今天我们将讨论如何 restore volume. restore 的过程其实很简单,两步走: 在存储节点上创建一个空白 volume. 将 backup 的 ...

  2. CSS3关于background-size属性

    bachground-size属性就是定义背景图片的大小,其值有:auto , 像素值 , 百分比 , cover  ,  contain . background-size: auto,默认值,以图 ...

  3. iOS开发 二维码生成

    基于libqrencode的二维码生成 + (void)drawQRCode:(QRcode *)code context:(CGContextRef)ctx size:(CGFloat)size { ...

  4. windows无法停用&OpenCurlyDoubleQuote;Android Composite Interface”设备的解决方法

    遇到这个问题时,解决方法如下: 打开设备管理器 -> 进程 -> 找到 adb.exe -> 右击选择结束进程 -> 然后重新弹出Android设备

  5. dtw算法优化&lpar;重写C语言版本&rpar;

    1.缩小搜索范围 2.降低内存消耗

  6. Delphi格式化输出函数&lpar;1&rpar;&colon; Format

    vars: string;begin//指令类型 types := Format('最大整数是: %d; 最小整数是: %d',[MaxInt,Low(Integer)]);//返回: 最大整数是: ...

  7. jquery选择器结果是数组时需要主要的一个问题

    代码很简单,如下 <div id="div1"> <span>111</span> <span>222</span> & ...

  8. javascript 偏移量

    通过四个属性可以获得元素的偏移量: 1.offsetHeight: 元素在垂直方向上占用的空间的大小,(像素).包括元素的高度,(可见的)水平滚动条的高度,上边框高度和下边框高度. 2.offsetW ...

  9. 201521123069 《Java程序设计》 第3周学习总结

    1. 本章学习总结 如果看不清楚可点击类与对象 2. 书面作业 Q1. 代码阅读 public class Test1 { private int i = 1;//这行不能修改 private sta ...

  10. vue 应用生产环境的 webpack 打包配置优化

    转:https://blog.csdn.net/robin_star_/article/details/83856363 前言:很好的打包优化的帖子,还没来的急去实测验证 1. 去掉 console ...