Показать сообщение отдельно
  #1 (permalink)  
Старый 15.06.2020, 08:23
Интересующийся
Отправить личное сообщение для korifey Посмотреть профиль Найти все сообщения от korifey
 
Регистрация: 30.03.2020
Сообщений: 28

Открытие/закрытие нескольких блоков.
Есть рабочий код.При нажатии определенной кнопки открывается ее блок а при повторном нажатии либо клике вне этого блока он закрывается.
Но вот в старых версиях браузеров он не работает.Я думаю из-за closest.
Помогите исправить!
var open=undefined;
const rels=[['#b3','.isk'],['#b2','.cat-all'],['#b1','.isk'],['#b4','.men1'],['#b5','.cat-all'],['#b6','.sor']];

window.addEventListener('click',function(e){
var item;
for(var i=0;i<rels.length;i++){
if(e.target.closest(rels[i][0])){item=rels[i];}}
if(item){item=document.querySelector(item[1]);
item.classList.toggle('open');}else{
if(e.target.closest('.open'))return;}
if(open&&open!=item)open.classList.remove('open');open=item;
});
Ответить с цитированием