我有一个html,在另一个子菜单中有一个子菜单。我想要的是在页面加载时,如果子子li让父级和父级的类都可以切换,那么包含li的li在类打开的情况下都是可见的。
HTML:
<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:
.NewsSubMenuOn ul li.off ul {
display:none;}
jquery:
$(document).ready(function () {
$(".turnedon").parent().parent().toggle();
});我的jquery不工作了吗?
发布于 2012-03-21 23:46:40
试试这个:
$(document).ready(function () {
$(".turnedon").parents('ul').toggle(true);
});你可以在这里查看http://jsfiddle.net/KwdmZ/
发布于 2012-03-21 23:46:13
遍历dom树,显示父元素,直到您的元素可见:
var target = $(".turnedon").show();
var parent = target.parent();
while(target.is(":hidden")) {
parent.show();
parent = parent.parent();
}演示: http://jsfiddle.net/4arWQ/
发布于 2012-03-21 23:47:05
尝试指定它应该查看的父类型:
$(document).ready(function () {
$(".turnedon").parent('ul').parent('ul').toggle();
});如果您查看代码路径,如果您使用parent().parent(),那么您选择的是带有类month的ahref。
https://stackoverflow.com/questions/9807880
复制相似问题