我在其他子菜单中有子菜单的html。我想要的是在页面加载时,如果子子项具有转换为父级切换的类及其父级切换,则包含打开类的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不工作?
答案 0 :(得分:1)
试试这个:
$(document).ready(function () {
$(".turnedon").parents('ul').toggle(true);
});
您可以在此处查看http://jsfiddle.net/KwdmZ/
答案 1 :(得分:0)
走上dom树,显示父元素,直到元素可见:
var target = $(".turnedon").show();
var parent = target.parent();
while(target.is(":hidden")) {
parent.show();
parent = parent.parent();
}
答案 2 :(得分:0)
尝试指定它应该看的父类型:
$(document).ready(function () {
$(".turnedon").parent('ul').parent('ul').toggle();
});
如果你看看你的代码路径,如果你去父()。parent()你选择ahref与class month。