Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.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手风琴导航上切换CSS类_Jquery_Html_Css - Fatal编程技术网

在jQuery手风琴导航上切换CSS类

在jQuery手风琴导航上切换CSS类,jquery,html,css,Jquery,Html,Css,所以我知道这个问题被问得太多了,我尝试了我找到的答案,但没有运气 我现在有一个手风琴式导航,在每个可扩展部分旁边都有+,表示它是可扩展的 当我单击导航中的类别时,我希望+消失,并且只在单击另一个类别后才重新出现在该类别上 我试过这样的方法: $(this).toggleClass("accordion > li:before"); $('.accordion li').toggleClass("accordion > li:before"); 就像这样: $(this).togg

所以我知道这个问题被问得太多了,我尝试了我找到的答案,但没有运气

我现在有一个手风琴式导航,在每个可扩展部分旁边都有
+
,表示它是可扩展的

当我单击导航中的类别时,我希望
+
消失,并且只在单击另一个类别后才重新出现在该类别上

我试过这样的方法:

$(this).toggleClass("accordion > li:before");
$('.accordion li').toggleClass("accordion > li:before");
就像这样:

$(this).toggleClass("accordion > li:before");
$('.accordion li').toggleClass("accordion > li:before");
但还没有任何进展。您可以在我的JSFIDLE中看到下面的一个工作示例

jQuery,我目前拥有的,减去我一直试图完成的:

$( document ).ready(function() {
$('.accordion li').children('ul').slideUp('fast');
$('.accordion > li').click(function () {
    $(this).siblings('li').find('ul').slideUp('fast');
    $('> ul', this).slideDown('fast');
});
$('a').click(function () {
    $('a').removeClass("a-active");
    $('li').removeClass("li-active");
    $(this).addClass("a-active");
    $(this).parent('li').addClass("li-active");
});
});
参见小提琴:

HTML:将类添加到所有顶级
  • <li class="closed">
    
    JavaScript:修改您的
    li
    单击事件

    $('.accordion > li').click(function () {
        $(this).removeClass('closed');
        $(this).siblings('li').addClass('closed').find('ul').slideUp('fast');
        $('> ul', this).slideDown('fast');
    });
    

    JQuery无法选择伪元素,因为它们不在DOM中。这太完美了!非常感谢。事实上,它破坏了我网站的另一部分。当您单击子菜单项时,它会损坏零件,以前它会在侧面添加一个条。@MathewMacLean我在您原来的小提琴中没有看到条:在我的小提琴中,单击导航,然后单击“第1页”或“第2页”,然后向左看。有一个小的垂直绿色条。我不知怎么删除了CSS的剪贴画-修复-记得接受答案!