用xslt轻松实现树形折叠导航栏(4)

  • 作者:未知 来源:未知 添加时间:2006年7月3日 字体:

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

    toggle.js

    function toggle(id)
    {
    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 !amp;!amp;
    parseint(row.getattribute("depth")) == depth + 1 )
    {
    row.classname = 'navigator';
    }
    }
    }
    }
    }

    到此结束。

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

  • 上一篇:了解web页面工具语言xml(二)定义
  • 下一篇:用xslt轻松实现树形折叠导航栏(3)
  • 最后更新时间:2024年12月22日
  • 返回页面顶端
ppdesk