Javascript向具有相同类的元素添加样式

Javascript向具有相同类的元素添加样式,javascript,jquery,html,css,drop-down-menu,Javascript,Jquery,Html,Css,Drop Down Menu,我正在一个下拉菜单中制作一个下拉菜单,我希望我有几个标题项,如果你点击其中一个,标题项中的下拉菜单将显示为块元素。但问题是,它们都有相同的类,当我想添加一个类时,head项中的所有下拉列表都会得到该类。我做错了什么 jQuery(文档).ready(函数(){ var click=false; jQuery(“.navbar collapse.nav li”)。单击(函数(){ 如果(单击==false){ jQuery(“.navbar collapse.nav li ul”).addCla

我正在一个下拉菜单中制作一个下拉菜单,我希望我有几个标题项,如果你点击其中一个,标题项中的下拉菜单将显示为块元素。但问题是,它们都有相同的类,当我想添加一个类时,head项中的所有下拉列表都会得到该类。我做错了什么

jQuery(文档).ready(函数(){
var click=false;
jQuery(“.navbar collapse.nav li”)。单击(函数(){
如果(单击==false){
jQuery(“.navbar collapse.nav li ul”).addClass('clicked');
单击=真;
}否则{
jQuery(“.navbar collapse.nav li ul”).removeClass('clicked');
单击=false;
}
});
});
。单击{
显示:块!重要;
}


您必须让代码查看与您单击的项目相关的特定ul:

jQuery(document).ready(function() {
  var click = false;
  jQuery(".navbar-collapse .nav li").click(function(e) {
    if (click == false) {
      jQuery(e.currentTarget).find("ul").addClass('clicked');
      click = true;
    } else {
      jQuery(e.currentTarget).find("ul").removeClass('clicked');
      click = false;
    }
  });
});
可以尝试jQuery(this.find('ul').first()或$(this.find('ul').first()来添加和删除类。