• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

用XSLT轻松实现树形折叠导航栏_xml

xml 搞代码 7年前 (2018-06-15) 110次浏览 已收录 0个评论

 

展开和折叠其实就是显示或不显示(displaynone or block)它与可见与不可见(visible or invisible)是有区别的, 前者不在页面预留空间。 这个toggle函数完成两个功能, 改变TR原来的Hidden属性, 使原来不显示的显示; 改变IMGsrc属性, 更改图片。

toggle.js

function toggle(id)
{

http://www.gaodaima.com/33708.html用XSLT轻松实现树形折叠导航栏_xml

var thisRow = document.all.item(id);
if (thisRow)
{
if (thisRow.getAttribute(“Expanded”) == ‘yes’)
{
thisRow.setAttribute(“Expanded”, “no”);
thisRow.children(0).children(0).children(0).src = “images/bs.gif“;

var allRows = document.all.tags(“TR”);
for (var i=1; i < allRows.length; i++)
{
var row = allRows[i];
if (row.getAttribute(“AncestorID“) == id)
{
if (row.getAttribute(“Expanded”) == ‘yes’) {
toggle(row.getAttribute(“id”));
}
row.className = ‘Navigator-Hidden’;
}
}
thisRow.className = ‘Navigator’;
}
else
{
thisRow.setAttribute(“Expanded”, “yes”);
thisRow.children(0).children(0).children(0).src = “images/bo.gif“;

var allRows = document.all.tags(“TR”);
var depth = parseInt(thisRow.getAttribute(“Depth”));
for (var i=1; i < allRows.length; i++)
{
var row = allRows[i];
if (row.getAttribute(“AncestorID“) == id &&
parseInt(row.getAttribute(“Depth”)) == depth + 1 )
{
row.className = ‘Navigator’;
}
}
}
}
}

到此结束。

诚然这个TOC的功能还是最基本的, 例如我还未做内容和目录的同步,其中有的地方还可以修改, xmlxsl文件可以进一步瘦身 不过对一般用户来讲, 这已经足够了。
真诚希望这篇文章能对您有所启发、有所帮助, 以后做出更酷、更快、更方便、功能更强的TOC

欢迎大家阅读《用XSLT轻松实现树形折叠导航栏_xml》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:用XSLT轻松实现树形折叠导航栏_xml

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址