用XSLT轻松实现树形折叠导航栏
日期:2007年10月13日 作者: 查看:[大字体 中字体 小字体]-
一般我们见到的XML文件是以元素为结点的,随着层次的不断加深,逐渐成了一棵树,这种文件的好处是我们一看就很明白其中的子、父、祖宗、兄弟关系,不方便之处在于,我个人认为,如果层次很深又有很多的兄弟结点的话,那么文件可能很大而影响处理的效率。正由于XML对描述数据结构的灵活性,所以在某些环境下采用属性值来描述元素之间的关系。例如花园左边的TOC(TABLE OF CONTENT),实现它的XML文件通过属性值来说明元素的类型(NODE OR LEAF),不过里面仍有子结点存在,所以用来TRANSFORM它的XSL文件很复杂,分了好几种情况。当然今天我们不是谈花园TOC的实现方法而是用一种更快速、更巧妙的方法来实现类似的TOC,当然也可以叫"树形折叠导航栏"。好了,废话少说,进入正题。先来看一个很简单的DTD。 NAVIGATOR.DTD
<!ELEMENT Navigation (Navigator*)>
<!ELEMENT Navigator EMPTY>
<!ATTLIST Navigator ID CDATA #IMPLIED AncestorID CDATA #IMPLIED Layer CDATA #IMPLIED Title CDATA #IMPLIED Childs CDATA #IMPLIED Url CDATA #IMPLIED Image CDATA #IMPLIED>
文件很简单,可以这样理解,顶层元素Navigation包含了多个Navigator元素定义了,Navigator不包含元素但有一系列属性。 也许您已经发现, 属性中有两个叫AncestorID Childs的,对了,这两个属性是关键, 当然还有Layer, 在他们的共同作用下, Navigator元素之间的关系将被明确描述。 好了, 我们来看Navi.xml文件, 以花园TOC做为例子。
查看花园TOC例子:
NAVI.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE Navi SYSTEM "navigator.dtd">
<?xml-stylesheet type="text/xsl" href="navigator.xsl" ?>
<Navigation>
<Navigator ID=''1'' AncestorID=''1'' Layer=''0'' Title=''花园首页'' Childs=''0'' Url=''default.asp'' Image=''images/dc.gif''/>
<Navigator ID=''2'' AncestorID=''2'' Layer=''0'' Title=''我的花园'' Childs=''4'' Url=''#'' Image=''default''/>
<Navigator ID=''3'' AncestorID=''2'' Layer=''1'' Title=''收藏夹'' Childs=''4'' Url=''#'' Image=''default''/>
<Navigator ID=''21'' AncestorID=''3'' Layer=''2'' Title=''我管理的花坛'' Childs=''0'' Url=''mybbs.asp?cat=g'' Image=''images/dc-new.gif''/>
<Navigator ID=''22'' AncestorID=''3'' Layer=''2'' Title=''我种下的种子'' Childs=''0'' Url=''mybbs.asp?cat=t'' Image=''images/dc-new.gif''/>
<Navigator ID=''23'' AncestorID=''3'' Layer=''2'' Title=''我喜欢的花园'' Childs=''0'' Url=''myfavorite.asp?cat=g'' Image=''images/dc-new.gif''/> - [1] [2] [3] [4] [5] [6] 下一页
-
- 用XSLT轻松实现树形折叠导航栏 相关文章:
- ·大量Windows Vista 边栏小工具下载
- ·清除浏览器地址栏列表中文地址
- ·制作彩色的QQ空间导航栏彰显个性
- ·小设置帮你找回IE7浏览器的菜单栏
- ·清除 IE 地址栏列表中的中文地址
- ·请问怎样修改vista任务栏的颜色??
- ·任务管理器的菜单栏消失、任务管理器的工具栏消失
- ·IE地址栏不见了的找回办法
- ·最简单的栏目切换方法(样式系列之栏目切换篇2)
- ·彻底关闭XP仿Vista任务栏的缩略图功能
- 用XSLT轻松实现树形折叠导航栏 相关软件
- ·适用于 Windows XP/2003 的“Windows 边栏”
- ·程序工具栏图片编辑器 V1.1
- ·游戏防护栏 V1.13
- ·跨栏高手
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:局域网传输文件详解
下一篇:用HTML应用启动CD
精品推荐
热点TOP10
- ·netcat使用指南
- ·全面对比OmniPeek与Sniffer
- ·无线攻防:破解WEP密钥过程全解
- ·反病毒引擎设计全解
- ·PHP注入某大型网站
- ·Php+Mysql注入专题
- ·sqlexp攻击.怎么防止?
- ·Win2003服务器组网、安全管理全攻略(1)
- ·Windows组策略屏蔽U盘有妙法(图)
- ·检测和删除系统中的木马(Trojan Horse)教程
- ·104种清除木马方法
- ·IIS攻击与日志
- ·什么是注入式攻击(1)
- ·ASP漏洞大集合最新
- ·Do All in Cmd Shell (一切尽在命令行)
- ·使用 OpenSSL API 进行安全编程
- ·禁止139/445端口连接
- ·IP 伪 装 法
- ·百炼成钢-打磨你的Outpost防火墙
- ·网络钓鱼式攻击 挂QQ等级网站
特别推荐
- ·用路由器来减轻DDOS攻击危害
- ·加强边界路由器安全防护的9个步骤
- ·10种方法减少内部人员的安全风险
- ·网络安全技术 再谈跨站脚本攻击与防御
- ·禁止139/445端口连接
- ·Windows组策略屏蔽U盘有妙法(图)
- ·IIS攻击与日志
- ·ASP漏洞大集合最新
- ·网络安全常识:九招防范黑客的简单办法
- ·Webmail攻防实战
- ·认清主动防御 安全软件的困惑与走向
- ·网络安全新木桶理论与信息安全
- ·网络钓鱼式攻击 挂QQ等级网站
- ·黑客入侵具体环节
- ·IP 伪 装 法
- ·TCP端口的作用、漏洞和操作建议
- ·104种清除木马方法
- ·CGI漏洞集锦
- ·什么是注入式攻击(1)
- ·Win2003服务器组网、安全管理全攻略(1)
