js加载XML文件
// 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文件的更多相关文章
- 通过JS加载XML文件,跨浏览器兼容
引言 通过JS加载XML文件,跨多种浏览器兼容. 在Chrome中,没有load方法,需要特殊处理! 解决方案 部分代码 try //Internet Explorer { xmlDoc=new Ac ...
- js 加载 xml 及遍历属性及内容 整理
本文旨在: js加载xml文件并读取节点信息 1 加载xml文件 var xmlDoc = loadXMLDoc("negativeData.xml"); function loa ...
- js便签笔记(8)——js加载XML字符串或文件
1. 加载XML文件 方法1:ajax方式.代码如下: var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObje ...
- 通过 XML HTTP 加载 XML 文件
新建一个.aspx文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="02-通 ...
- dom4j加载xml文件
## dom4j加载xml文件 ``` // 1. 加载xml文件 InputStream is = MyTest.class.getResourceAsStream("user.xml&q ...
- 解决dom4j加载xml文件性能慢的问题
在代码中使用: 1: DocumentHelper.parseText 2: SAXReader reader = new SAXReader(); Document extdocument = re ...
- java中加载xml文件方法
this.getclass().getclassloader().getresourceasstream(String file); 可以加载文件,比如xml.
- 使用TreeView加载XML文件
PS: 由于小弟初学编程,本文只写实现方式,代码写的不是很好请见谅! 1.需要读取的xml文档内容 2. 最终实现效果 3 貌似看起实现起来很复杂 但是想想还是挺简单 思路: 读取XML文档 →获 ...
- tomcat与springmvc 结合 之---第19篇 springmvc 加载.xml文件的bean 过程
writedby 张艳涛,看springmvc 的源码太难了,怎么办, 这篇文章主要分析了看透springmvc的第9章结尾的 如何解析xml 命名空间标签 <?xml version=&quo ...
随机推荐
- app间互相启动及传参数
http://blog.sina.com.cn/s/blog_13bc6705b0102wmc5.html http://blog.csdn.net/iefreer/article/details/8 ...
- 将ADS1.2的工程迁移到KEIL上-基于2440
裸机程序应该是一个很好的选择 1. 不拷贝启动代码,因为我们用自己的启动代码 2. 建立工程目录分级,建立完成后如下所示 拷贝相应代码到对应目录中 Option中拷贝 Core中拷贝 建立 ...
- iOS tableViewCell plane格式下,接近section边缘不显示分割线却被复用解决办法
今天做公司产品的时候遇到了如题问题,困扰我很长时间,用尽各种办法不能解决,究其原因不知为何,自定义cell低端有view划线的时候,划线一般的显示1像素,而贴着section的显示很少 顶多0.3像素 ...
- CentOS编译安装LNMP环境
这里是教大家如何在centos下利用源码编译安装LNMP环境. 工具/原料 centos服务器一台 自用电脑一台 准备篇 配置好IP.DNS .网关,确保使用远程连接工具能够连接服务器 配置防火墙,开 ...
- Thinking in scala (1)----类
ChecksumAccumulator.scala import scala.collection.mutable.Map class ChecksumAccumulator { private va ...
- leetcode--003 LRU cache
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABHAAAACmCAIAAAA9PO+sAAAgAElEQVR4nO3du3HbytvH8X8zqoB12A ...
- github的SSH配置如下
Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git ...
- 笔记整理——Linux下C语言正则表达式
Linux下C语言正则表达式使用详解 - Google Chrome (2013/5/2 16:40:37) Linux下C语言正则表达式使用详解 2012年6月6日Neal627 views发表评论 ...
- session锁问题
碰到个问题,在使用了session时(如用户登录),如果当前请求时间过长,再执行其他请求都不会有响应,查找了网上资料发现,这个是session锁的问题 目前我们的程序基本流程如下: (1)加载Sess ...
- centos 6.5下安装文件上传下载服务
centos 6.5下安装文件上传下载服务 由于每次在CentOS中要下载一些配置文件到物理机,和上传一些文件到服务器,导致来回的开启ftp软件有点麻烦,这里我们可以使用文件上传下载服务,来解决上传和 ...