JQuery-显示和隐藏菜单
如何隐藏子菜单,当单击链接时,它会再次显示子菜单 我试着编写自己的代码,但不起作用 我只想创建一个简单的菜单,我该怎么做JQuery-显示和隐藏菜单,jquery,Jquery,如何隐藏子菜单,当单击链接时,它会再次显示子菜单 我试着编写自己的代码,但不起作用 我只想创建一个简单的菜单,我该怎么做 <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <li class="Item1"> <a href="#" >Separador 1</a> </li> <ul class="submenu">
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<li class="Item1">
<a href="#" >Separador 1</a>
</li>
<ul class="submenu">
<li class="menuitem">
<a href="#"> Submenu 1 </a>
</li>
</ul>
<style>
li{
float:left;
display:inline;
margin-left: 10px;
}
</style>
<script>
$('.item1 a').click(function() {
$(this).children('.menuitem').toggle();
});
</script>
李{
浮动:左;
显示:内联;
左边距:10px;
}
$('.item1 a')。单击(函数(){
$(this.children('.menuitem').toggle();
});
试试看
演示:要使jQuery正常工作,需要将子菜单设置为li元素的子菜单:
<li class="Item1"><a href="#" >Separador 1</a>
<ul class="submenu">
<li class="menuitem"><a href="#"> Submenu 1 </a></li>
</ul>
</li>
请在此处查看它的实际操作:
您可以使用代码获得相同的结果,但需要稍微修改选择器。我给你的是一种更标准的方法。你也可以用
注意:您提供的是.item1
类名,因为标记包含.item1
其中我是大写字母,因此请确保选择器始终区分大小写
试试这个:
<a href='javascript:toggle()'>Expand/Collapse</a>
<script>
function toggle(){
var div1 = document.getElementById('toggle')
if (div1.style.display == 'none') {
div1.style.display = 'block'
} else {
div1.style.display = 'none'
}
}
</script>
<div id='toggle' style='display:none'>
函数切换(){
var div1=document.getElementById('toggle')
如果(div1.style.display=='none'){
div1.style.display='block'
}否则{
div1.style.display='none'
}
}
是否希望在默认情况下隐藏该链接,并在单击该链接时将其打开?您发布的HTML片段无效。JavaScript是区分大小写的,所以
$('.item1 a')
应该是$('.item1 a')
。我要做的唯一注释是传递事件参数。
<li class="Item1"><a href="#" >Separador 1</a>
<ul class="submenu">
<li class="menuitem"><a href="#"> Submenu 1 </a></li>
</ul>
</li>
$('.Item1').click(function() {
$(this).children('.submenu').find('.menuitem').toggle();
});
$('.Item1 a').click(function() {
$(this).closest('li').next().children().toggle();
});
<a href='javascript:toggle()'>Expand/Collapse</a>
<script>
function toggle(){
var div1 = document.getElementById('toggle')
if (div1.style.display == 'none') {
div1.style.display = 'block'
} else {
div1.style.display = 'none'
}
}
</script>
<div id='toggle' style='display:none'>
$('.Item1 a').click(function() {
$('.submenu li').toggle();
});