首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery切换双亲li?

jquery切换双亲li?
EN

Stack Overflow用户
提问于 2012-03-21 23:37:54
回答 3查看 740关注 0票数 1

我有一个html,在另一个子菜单中有一个子菜单。我想要的是在页面加载时,如果子子li让父级和父级的类都可以切换,那么包含li的li在类打开的情况下都是可见的。

HTML:

代码语言:javascript
复制
<ul class="NewsSubMenu">
   <li class="NewsSubMenuOn" style="margin-left:-1.7px;">
      <span style="padding-left:35px; color:White;">  News Archive</span>
       <ul class="NewsArchive">
           <li class="off">
           <a href="#" class="year">2012</a>                
                <ul class="NewsMonths">
                        <li class="off">
                           <a href="#" class="month">March</a> 
                              <ul class="NewsArt">
                                         <li class="turnedon">
                                          News Headline
                                       </li>
                                </ul>
                        </li>
                        <li class="off">
                           <a href="#" class="month">February</a> 
                              <ul class="NewsArt">
                                       <li>
                                          Title                                        </li>
                                </ul>
                        </li>
                </ul>
           </li>
           <li class="off">
           <a href="#" class="year">2011</a>                
                <ul class="NewsMonths">
                        <li class="off">
                           <a href="#" class="month">March</a> 
                              <ul class="NewsArt">
                                       <li>
                                         PVC4PIPES
                                       </li>
                                </ul>
                        </li>
                </ul>
           </li>
       </ul>   
      </li>
    </ul>

CsS:

代码语言:javascript
复制
.NewsSubMenuOn ul li.off ul {
display:none;

}

jquery:

代码语言:javascript
复制
  $(document).ready(function () {
    $(".turnedon").parent().parent().toggle();
});

我的jquery不工作了吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-21 23:46:40

试试这个:

代码语言:javascript
复制
$(document).ready(function () {
    $(".turnedon").parents('ul').toggle(true);
});​

你可以在这里查看http://jsfiddle.net/KwdmZ/

票数 1
EN

Stack Overflow用户

发布于 2012-03-21 23:46:13

遍历dom树,显示父元素,直到您的元素可见:

代码语言:javascript
复制
var target = $(".turnedon").show();
var parent = target.parent();
while(target.is(":hidden")) {
    parent.show();
    parent = parent.parent();
}

演示: http://jsfiddle.net/4arWQ/

票数 0
EN

Stack Overflow用户

发布于 2012-03-21 23:47:05

尝试指定它应该查看的父类型:

代码语言:javascript
复制
 $(document).ready(function () {
    $(".turnedon").parent('ul').parent('ul').toggle();
});

如果您查看代码路径,如果您使用parent().parent(),那么您选择的是带有类month的ahref。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9807880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档