我有一个使用 html 列表的下拉菜单。jquery 代码在第一级工作正常,但是当我尝试单击带有子菜单的列表上的某些内容时,它会关闭并重新打开同一个列表。
我怎样才能让它打开除了我点击的列表之外的所有东西?
// Document Listening
$(document).ready(function () {
// JQuery running fine, don't need CSS trick for dropdown
// Remove the class of child and grandchild, this removes the CSS 'falback'
$("#nav ul.child").removeClass("child");
$("#nav ul.grandchild").removeClass("grandchild");
// When a list item that contains an unordered list is hovered on
$("#nav li").has("ul").click(function (e) {
$("#nav li").children("ul").not(e.target).slideUp("fast");
$(this).children("ul").slideDown("fast");
});
});
// Document Click
// Click on anything else other then the link you clicked and close
$(document).mouseup(function (event) {
if (!$(event.target).closest("#nav li").length) {
$("#nav li").children("ul").slideUp("fast");
}
});