Не работает несколько раз classList add/remove

есть код блоков меню

html

 <div class="menu-select">
                <ul class="menu">
                    <li><button class="direction">ВСЕ <div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">Вторичная<div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">Загородная<div class="plane"><img src="images/plane.png"></div> <div class=container-number><span class="span"></span><span class=text>10</span></div></button></li>
                    <li><button class="direction">Новостройки<div class="plane"><img src="images/plane.png"></div></button></li>
                     <li><button class="direction">Аренда<div class="plane"><img src="images/plane.png"></div> <div class=container-number><span class="span"></span><span class=text>6</span></div></button>
                         <li><button class="direction-rent rent">Снять<div class="plane"><img src="images/plane.png"></div></button></li>
                          <li><button class="direction-rent">Сдать<div class="plane"><img src="images/plane.png"></div> <div class=container-number><span class="span"></span><span class=text>6</span></div></button></li> 
                          <li><button class="direction-rent rent3">Кастомное <div class="plane"><img src="images/plane.png"></div><div class=container-number><span class="span"></span><span class=text>10</span></div></button></li>  
                          <li class="direction-botton botton-rent" id="direction-botton"><button class="custom-button" id="custom-button">+</button></li>         
                     </li>
                    <li><button class="direction ipoteka">Ипотека<div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">Коммерческая<div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">Межрегиональные<div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">HR<div class="plane"><img src="images/plane.png"></div></button></li>
                    <li><button class="direction">Прочее<div class="plane"><img src="images/plane.png"></div></button></li>
                   </ul>
            </div>

css

   .active-direction {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 23px;
    color: #0F6BFF;
    background: #F5FAFF;
    border-radius: 6px;
    width: 100%;
    height: 36px;
    display: inline-flex;
    align-items: center;
    border: none;
    margin-bottom: 13px;
    padding-left: 12px;
   }


.direction {
    margin-bottom: 13px;
    padding-left: 12px;
    border: none;
    background: none;
    color: #667085;
    height: 36px;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 25px;
    display: flex;
}

.plane {
    margin-left: 100px;
    display: none;
}

.plane-active {
    margin-left: 100px;
    display: unset;
}
.container-number {
    display: inline-block;
    position: relative;
  }
  
  .span {
    display: inline-block;
    background:#F2F4F7;
    color: #344054;
    text-align: center;
    border-radius: 39%;
    padding: 37% 0;
    width: 100%;
    position: absolute;
    transform: translateY(-50%);
    margin-top: 10px;
    margin-left: 8px;
  }
  
  .text {
    position: relative;
    top: -2.5px;
    padding: 0em 0.65em;
    left: 8px;
  }

js

let menu = document.getElementsByClassName('menu');
let direction = document.getElementsByClassName('direction');
for (i = 0; direction.length > i; i++) {
  direction[i].onclick = function() {
    if (this.classList.contains ('direction')){
      this.classList.remove('direction');
      this.classList.add('active-direction');
}
      else {
        this.classList.remove('active-direction');
        this.classList.add('direction');
      }
}
}

при нажатии на блок меню меняется стиль - это готово, но также должен добавляться стиль plane-active и remove container-number но если их добавлять функцию то он их не видит, например, plane.classList.add('plave active')


Ответы (1 шт):

Автор решения: Алексей Шиманский

Добавлять несколько классов можно так:

elem.classList.add("first", "second", "third");

// или

elem.classList.add(...["first","second","third"]);

Удалять так:

elem.classList.remove("first", "second", "third");

// или

elem.classList.remove(...["first","second","third"]);
→ Ссылка