我的子菜单有问题。
我可以显示子菜单(当我点击菜单或Li>文本时)。例如,单击ONE
时显示子菜单此外,如果此人点击其他菜单(Li>文本),请关闭其他子菜单。例如,如果ONE的子菜单打开并且我单击Two,则One的子菜单将关闭。
但我无法使用当前代码切换以打开/关闭子菜单。例如,如果我单击One,则显示子菜单。但我希望如果我再次点击One,关闭子菜单。
任何人都可以帮助我吗?
这是我的代码
<head><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".menu .expanded .menu ").hide();
$("li:has(ul)").click(function() {
$(".menu .expanded .menu ").hide();
$("ul", this).toggle('fast');
});
});
</script>
</head>
<body>
<ul class="menu">
<li class="expanded">One
<ul class="menu">
<li>One 1</li>
<li>One 2</li>
<li>One 3</li>
<li>One 4</li>
</ul>
</li>
<li class="expanded">Two
<ul class="menu">
<li>Two 1</li>
<li>Two 2</li>
<li>Two 3</li>
<li>Two 4</li>
</ul>
</li>
<li class="expanded">Three
<ul class="menu">
<li>Three 1</li>
<li>Three 2</li>
<li>Three 3</li>
<li>Three 4</li>
</ul>
</li>
</ul>
</body>
非常感谢!我是新人:D
答案 0 :(得分:2)
我只删除了一行:
div = soup.find('div', {"class":"wrapper"})
div.text
您可以检查我的代码段中的预期行为
$(".menu .expanded .menu ").hide();
$(document).ready(function() {
var previousTarget = null;
$("ul", "li").toggle('fast');
$("li:has(ul)").click(function() {
$(".menu .expanded .menu").hide('fast');
if (this === previousTarget && $(this).children().css('display')!='none') {
$(this).children().hide('fast');
} else {
$(this).children().show('fast');
}
previousTarget = this;
return false;
});
});