【问题标题】:Superfish plugin tweak - adding a 'current' class to a parent li element tooSuperfish 插件调整 - 也向父 li 元素添加“当前”类
【发布时间】:2013-03-26 23:45:42
【问题描述】:

我正在使用一些软件构建一个站点,该软件会吐出一组分层嵌套列表,而我又使用 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" 应用于顶级 &lt;li&gt;,因为它是活动节点的父级。

    这有意义吗?

  • 【问题讨论】:

      标签: jquery traversal superfish


      【解决方案1】:

      试试这个

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

      【讨论】:

      • 很棒 - 经过一些调整,它运行良好。我在调用 superfish js 和标签突出显示后运行它。非常感谢。
      猜你喜欢
      • 1970-01-01
      • 2012-02-09
      • 1970-01-01
      • 2019-07-07
      • 2012-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-02
      相关资源
      最近更新 更多