Удалить div по id при условии

Нужно удалять div при условии, например у меня есть табы

<ul class="nav nav-tabs">
    <li class=""><a href="#tab-description" data-toggle="tab" aria-expanded="false">Описание</a></li>
    <li class="active"><a href="#tab-specification" data-toggle="tab" aria-expanded="true">Характеристики</a></li>

    <li class=""><a href="#tab-download" data-toggle="tab" aria-expanded="false">Загрузки</a></li>

    <li class=""><a href="#tab-review" data-toggle="tab" aria-expanded="false">Отзывов (0)</a></li>
</ul>

<div id="123">test</div>

Так вот, нужно если это не дискрипшен (#tab-description) удалить div с id 123

Может как то удаление на табы привязать, но блин если страница обновится то опять появится.

Прошу помощи, ооочень, Спасибо!)


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

Автор решения: OPTIMUS PRIME
let description_active = document.querySelector('.nav-tabs li.active [href="#tab-description"]');
if (!description_active) {
  let div = document.querySelector("#123");
  if (div) div.parentNode.removeChild(div);
}

querySelector с .nav-tabs li.active [href="#tab-description"] таким селектором будет искать элемент с атрибутом href="#tab-description", который находятся где-то внутри li с классом active. Если не найдет - вернет null, который в логическом контексте будет false.

!null!falsetrue

→ Ссылка