您的位置: 首页 >日志>用户体验>详细内容

用户体验

Webfuture中实现目录树效果

来源:本站原创 发布时间:2025-01-09 13:39:30 浏览次数: 【字体:

202412032129046438


之前在SF上基本思路是使用JS方法来实现。而WF上标签中已经写好hasUl、on类,经过一些改造即可以达到类似效果。

首先对“节点多级列表.cshtml”标签进行改造,如下图针对父栏目增加个 i 元素,统一了“on”类,以方便对目录进行开关。

202412032151475241

模板中绑定标签,并附加加简单选中事件

        <div class="dTree">
          @Power.Partial("PE节点多级列表", new { NodeIdentifier = "bzk", Count = 99, Depth = 3, CurrentDepth = 1})
        </div>
        <script>
            $(".dTree i").click(function(){
              $(this).parent().toggleClass("on");
            });
        </script>

最后写样式,部份通过匹配选择器附加到展开收起的样式中

.treeNode li {padding-left:18px; position:relative; background:url(pe-extra/dtree/img/join.gif) repeat-y left;}
.treeNode li[class*="hasUl"]{ background-image:url(pe-extra/dtree/img/line.gif) }
.treeNode li[class*="last"]{background: url(pe-extra/dtree/img/joinbottom.gif) no-repeat left;}
.treeNode li a { display:block;overflow:hidden; height:22px; line-height:22px; padding-left:16px; background:url(pe-extra/dtree/img/page.png) no-repeat 0 center; }
.treeNode li[class*="hasUl"]>h3>a { background-image:url(pe-extra/dtree/img/folder.png) }
.treeNode li[class*="hasUl"][class*="on"]>h3>a { background-image:url(pe-extra/dtree/img/folderopen.png); }
.treeNode li i { background:url(pe-extra/dtree/img/plus.gif); width:18px; height:18px; position:absolute; left:0px; top:2px; cursor:pointer;}
.treeNode li ul { display:none;}
.treeNode li[class*="on"]>i { background:url(pe-extra/dtree/img/minus.gif);}
.treeNode li[class*="on"]>ul,.treeNode li.on>ul { display:block;}


×

用户登录