Javascript removeClass不工作

Javascript removeClass不工作,javascript,jquery,html,Javascript,Jquery,Html,我有一个li列表,该列表正在运行数据项目id 我想单击list\u titleremoveClasse“打开”但不工作 <div class="project-side-list scrollbar-inner"> <ul id="sortable"> <li data-project-id="1"> <div class="list-title">Content</div> &

我有一个
li
列表,该列表正在运行
数据项目id

我想单击
list\u title
removeClass
e
“打开”但不工作

<div class="project-side-list scrollbar-inner">
   <ul id="sortable">
      <li data-project-id="1">
         <div class="list-title">Content</div>
           <div class="list-project-detail-content">
           </div>
      </li>
  </ul>
</div>
提示:
toggleClass
不工作

<div class="project-side-list scrollbar-inner">
   <ul id="sortable">
      <li data-project-id="1">
         <div class="list-title">Content</div>
           <div class="list-project-detail-content">
           </div>
      </li>
  </ul>
</div>

首先,您的html无效,您没有关闭
  • 标记

    下面是一个工作示例,如果您想稍后动态加载列表,可以使用委托函数

    
    函数openToggler(){
    var_this=$(this);
    var元素=_this.closest('li[data project id]”);
    var elementId=element.attr('data-project-id');
    $('.project-side-list li[data-project-id]')。而不是('[data-project-id=“'+elementId+'”)。removeClass('open');
    元素toggleClass('open');
    }
    $('.list title')。单击(openToggler);
    //$('.project-side-list').delegate('.list-title','click',openToggler)
    
    li{
    颜色:红色;
    }
    李开复{
    颜色:蓝色;
    }
    
    
      内容 例子 示例内容

    以下是简单的方法

    $('.list-title').click(function() {
       $(this).toggleClass('open')
    })
    

    所以我想单击“li打开框”,然后单击“li顶部删除打开类”。现在,当您单击框上的任意位置时,它将关闭。除非您确实知道自己在做什么,并且有充分的理由感谢您的回答,否则不要将事件侦听器嵌套在其他事件处理程序中,但open class
  • 这里正在工作。我尝试了这一工作,但真正的问题;单击“添加打开的类和内容显示”。但当我点击内容关闭李。我的问题就在于此。当我单击“内容”时,不删除类。你可以禁用列表项目详细信息内容吗?单击或我不知道:)所以单击列表中的任意位置。我已经更新了我的答案。现在看看。现在,当您单击
    .list title
    class时,它将查找最近的父级
    li[data project id]
    ,并切换class
    。打开
    。这是你想要的结果吗?是的,谢谢兄弟。这是可行的,但有一个简单的问题。单击第一个li,然后单击第二个li。但不是第一个李。