Superfish插件调整 - 也将'当前'类添加到父li元素

时间:2011-07-25 16:01:50

标签: jquery traversal superfish

我正在构建一个网站,其中包含一些软件,这些软件会发出一组层次结构嵌套的列表,我依次使用superfish jquery插件转换为下拉菜单。

我遇到的问题是,所说的软件只会应用一个活动类(对于当时处于活动状态的页面/元素) - 如果我在二级页面上,我需要将一个应用于父级

  • 标签,以便菜单保持打开状态。我不想因为明显的原因而破解核心,所以我想知道我是否可以使用Jquery来应用一些简单的魔法。

    是否有一种方法可以定位包含class ='active'的列表的父li元素? (如果我只是在顶级页面中,那就不一样了,所以不需要向上移动)

    例如,软件生成的代码如下:

    <ul>
       <li><a href="#">First level</a>
         <ul>
             <li class="active"><a href="#">Second 1</li>
             <li><a href="#">Second 2</li>
             <li><a href="#">Second 3</li>
          </ul>
       </li>
    </ul>
    

    我还需要将另一个class =“active”应用到顶级<li>,因为它是活动节点的父级。

    这有意义吗?

  • 1 个答案:

    答案 0 :(得分:0)

    试试这个

    var $this;
    $("ul > li").each(function(){
        $this = $(this);
    
        if($this.find("> li.active").length)
          $this.addClass("active");
    }