Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 切换单独元素的类并删除类_Jquery_Toggle - Fatal编程技术网

Jquery 切换单独元素的类并删除类

Jquery 切换单独元素的类并删除类,jquery,toggle,Jquery,Toggle,我有以下代码: <ul> <li> <a href="#" onclick="">Menu item One</a> <a class="plus" href="#">+</a> <ul class="submenu"> <li><a href="#" onclick=""><span>Contact</span&g

我有以下代码:

<ul>        
  <li>
    <a href="#" onclick="">Menu item One</a>
    <a class="plus" href="#">+</a>
    <ul class="submenu">
      <li><a href="#" onclick=""><span>Contact</span></a></li>
      <li><a href="#" onclick=""><span>Location</span></a></li>
    </ul>
  </li>
  <li>
    <a href="#" onclick="">Menu item Two</a>
    <a class="plus" href="#">+</a>
    <ul class="submenu">
      <li><a href="#" onclick=""><span>Contact</span></a></li>
      <li><a href="#" onclick=""><span>Location</span></a></li>
    </ul>
  </li>
</ul>
这很好用。我需要它做的不仅是关闭和打开类,而且在单击另一个“.plus”链接时删除该类

因此,它应该:

  • 如果您一直单击相同的“.plus”,则可以关闭和打开该类
  • 从任何其他“.plus”链接中删除该类,并将该类添加到单击的“plus”链接中
  • 理想情况下,单击时“+”文本应更改为“-”

  • 谢谢

    要执行所需操作,您只需在所有其他
    子菜单
    元素上调用
    removeClass()
    。要将
    +
    更改为
    -
    ,可以使用
    text()
    方法根据当前设置切换值。您还可以删除空的
    onclick
    属性。试试这个:

    $('.plus')。单击(函数(e){
    e、 预防默认值();
    var$target=$(this).text(函数(i,t){
    返回t='+'?'-':'+';
    }).next().toggleClass(“someClass”);
    $('.submenu').not($target.removeClass('someClass');
    $('.plus')。不是(这个).text('+');
    });
    
    li{display:none;}
    li ul.someClass li{display:block;}
    
    

    就这样,太好了!谢谢
    $('.plus').click( function() { 
        $(this).next().toggleClass("someClass");
    });