@id100k
React developer

Стоит ли делать input type="radio" переключатели в Nav?

Всем добрый день!
В боковой панели переключатели блоков сайта. При переключении сделал так:

toBlockButtonsContainer.addEventListener("click", function (e) {
  if (e.target.hasAttribute("rel")) {
    //avoid click between btns (clicking on background)

    toBlockButtonsArray.forEach((toBlockBtn) => {
      toBlockBtn.classList.remove("left-panel__button_active");
    });
    blocksArray.forEach((block) => {
      block.classList.remove("prim-block_active");
    });

    e.target.classList.add("left-panel__button_active");
    //e.target.getAttribute('rel') - button and block number
    blocksArray[e.target.getAttribute("rel")].classList.add("prim-block_active");
  };
});


Т.е. удаляю актив у всех и назначаю для event target.

Очень удобно было бы сделать переключение при помощи input radio. Появится атрибут и псевдокласс checked, javascript можно сильно разгрузить.

Не смог найти примера такого использования, поэтому пишу свой вопрос.
input type="radio" в навигации - плохая идея или норм?
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
@id100k Автор вопроса
React developer
Попробовал, отвечу сам.
Всё будет работать, валидатор не ругается.
Действительно проще работать, когда не нужно чистить классы и когда есть "checked". Разве что придется спрятать сам кружок, но это минута.

Но! Таб (фокус) работать на этих кнопках нормально не будет, все радио - один элемент.

Если вам важны табы на проекте (как мне ☹️) то это не тот вариант.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы