Показать сообщение отдельно
  #1 (permalink)  
Старый 01.10.2021, 05:22
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Оптимизировать код
Привет мир!

Имеется конструкция скрывающая модальные окна и их оверлей. Вот такая:

let scolor = document.querySelector('#scolor');
    scolor.onclick = function () {
        document.querySelectorAll('#KIDE_opciones, .overlayo').forEach(elem => elem.style.display = "none");
      
    };

    let most = document.querySelector('.overlayo');
    most.onclick = function () {
        document.querySelectorAll('.KIDE_mostrar, .overlayo').forEach(elem => elem.style.display = "none");
    };

    let kidemens = document.querySelector('#kide_x_s');
    kidemens.onclick = function () {
        document.querySelector(".overlayo").style.display = "none";
    };

    let kborrar = document.querySelector('#KIDE_mensaje_borrar');
    kborrar.onclick = function () {
        document.querySelector(".overlayo").style.display = "none";
    };


Все работает, но перфекционизм негодует, 4 переменные для одной и той же функции наверное дико, попытался записать в одну добавив цикл:

let scolor = document.querySelectorall('#scolor, .overlayo, #kide_x_s, #KIDE_mensaje_borrar').forEach(el) =>;
    scolor.onclick = function () {
        document.querySelectorAll('#KIDE_opciones, .overlayo, .KIDE_mostrar, ').forEach(elem => elem.style.display = "none");
    };


Явно блуждаю в синтаксисе, но уже по всякому перепробовал. Можно ли заставить это работать?
Ответить с цитированием