开盘后当前下拉列表不会关闭

我有这个脚本在我的导航项下打开下拉列表。

现在,当单击导航项时,将打开下拉列表。 当我再次点击相同的项目时,它将不会关闭。

只有当我点击另一个导航项打开另一个下拉列表时,我才能关闭它。

如何在单击时关闭当前导航项目,同时在单击其他导航项目时保持其function关闭?

$("li.dropdown-control > a").click( function (event) { event.preventDefault() $('.dropped').removeClass('dropped'); var nextSibling = $(this).next(); nextSibling.toggleClass("dropped"); }); 

看看你的代码:

  $('.dropped').removeClass('dropped'); var nextSibling = $(this).next(); nextSibling.toggleClass("dropped"); 

这将删除所有已dropped类(包括您刚刚单击的类,如果它已经被打开),然后将其添加回相同的元素。 这就是为什么它似乎永远不会关闭 – 你实际上关闭并立即再次打开它。

试试这个:

  var nextSibling = $(this).next(); nextSibling.toggleClass("dropped"); $('.dropped').not(nextSibling).removeClass('dropped'); 

通过删除$('.dropped').removeClass('dropped');尝试这一点$('.dropped').removeClass('dropped'); 你的代码中的一行。 toggleClass表示添加类(如果未添加),或删除类(如果已添加)。

现在,删除$('.dropped').removeClass('dropped'); toggleClass将删除.dropped

 $("li.dropdown-control > a").click( function (event) { event.preventDefault() var nextSibling = $(this).next(); nextSibling.toggleClass("dropped"); });