Стрелки меню Accordian не синхронизированы

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

У меня есть следующий код jquery, в котором есть ошибка. Это работает нормально, если вы открываете один пункт меню, а затем закрываете пункт меню.

Однако, когда вы нажимаете на пункт меню a, а затем нажимаете другой пункт меню, первый пункт меню закроется, как и ожидалось, однако стрелка останется несинхронизированной. Как бы мне это исправить?

 $('#accordian h2,h3').click( function() {
var checkElement = $(this).next(); 
$('#accordian ul ul').removeClass('active');
$(this).closest('ul ul').addClass('active');
$("h2#heading",this).toggleClass("glyphicon glyphicon-chevron-down glyphicon glyphicon-chevron-right"); 

if ((checkElement.is('ul ul')) amp;amp; (checkElement.is(':visible'))) {
    $(this).closest('ul ul').removeClass('active');
    checkElement.slideUp('normal');
    return false;
}

if ((checkElement.is('ul ul')) amp;amp; (!checkElement.is(':visible'))) {
    $('#accordian ul ul:visible').not(checkElement.parentsUntil('#accordian')).slideUp('normal');
    checkElement.slideDown('normal');
    return false;
}
});
  

Спасибо всем,
Джеймс

Комментарии:

1. Вам нужно сделать removeClass("glyphicon glyphicon-chevron-down glyphicon glyphicon-chevron-right"); , как вы скользите вверх по всем открытым окнам.

2. поделитесь своей частью HTML и CSS или Jsfiddle будет хорошо.

3. Вышеуказанное действие только заставило значки исчезнуть @ShaunakD.