单击jQuery或JavaScript菜单下拉菜单
现在,我正在尝试构建一个垂直菜单,它下面有一个下拉子菜单 下面是我的HTML和我正在使用的jQuery函数:单击jQuery或JavaScript菜单下拉菜单,javascript,jquery,html,css,Javascript,Jquery,Html,Css,现在,我正在尝试构建一个垂直菜单,它下面有一个下拉子菜单 下面是我的HTML和我正在使用的jQuery函数: $(函数(){ $('#menusomething>li')。单击(函数(e){ e、 停止传播(); 变量$el=$('ul',本); $('#menusomething>li>ul')。而不是($el).slideUp(); $el.stop(正确,正确)。滑动切换(400); }); $('menusomething>li>ul>li')。单击(函数(e){ e、 停止即时复制(
$(函数(){
$('#menusomething>li')。单击(函数(e){
e、 停止传播();
变量$el=$('ul',本);
$('#menusomething>li>ul')。而不是($el).slideUp();
$el.stop(正确,正确)。滑动切换(400);
});
$('menusomething>li>ul>li')。单击(函数(e){
e、 停止即时复制();
});
});代码>
为任何看到这一点的人找到了答案。首先必须将结束标记从章节移动到结尾。子菜单随后使用此项,现在它可以按需要工作
$(function() {
$('#menusomething li > .submenu').parent().click(function() {
var submenu = $(this).children('.submenu');
if ( $(submenu).is(':hidden') ) {
$(submenu).slideDown(400);
} else {
$(submenu).slideUp(400);
}
});
});
以下代码实现了我相信您希望的功能:单击一个
元素,该元素是第一级
元素的下一个同级。正如您在所需的注释中所述,由于将style=“display:none;”“
添加到
中,它现在开始关闭
注意:从用户界面的角度来看,没有子菜单或链接的
条目不应包含
问题是什么?您的HTML没有任何匹配'#menusomething>li>ul'
或'#menusomething>li>ul>li'选择器的内容。具体地说,您没有属于
元素的子元素的
元素。因此,这两行都不会起任何作用。很抱歉,这里有新的内容!谢谢你的回答。。由于您的评论,我意识到如果我将结束标记从章节移动到子菜单后,它将修复我试图执行的操作。尽管我还有一个问题。这样,当您打开导航时,菜单将保持打开状态。如果子菜单开始关闭,然后单击打开,是否仍要执行此操作。现在它是打开的,然后单击关闭/打开