t-alexashka
@t-alexashka
Сразу пишу legacy код

Что сделать с меню чтобы на планшетах и сенсорных телефонах оно нормально открывалось?

Есть меню, самое обычное, там при :hover выпадает подменю. Но проблема в том что на сенсорных экранах оно не наводиться а сразу переходит по ссылке на корневом элементе.
<ul class="mainmenu">
  <li><a href="#">MENU_ITEM1</a></li>
  <li>
      <a href="#">MENU_ITEM2</a>
      <ul>
           <li><a href="#">SUBMENU_ITEM1</a></li>
           <li><a href="#">SUBMENU_ITEM2</a></li>
      </ul>
</li>
  <li><a href="#">MENU_ITEM3</a></li>
  <li><a href="#">MENU_ITEM4</a></li>
</ul>


Чем можно заменить :hover чтобы при попытке открыть SUBMENU_ITEM1 не переходило по MENU_ITEM2 ?
  • Вопрос задан
  • 2681 просмотр
Решения вопроса 2
bootd
@bootd Куратор тега CSS
Гугли и ты откроешь врата знаний!
Убираем css hover'ы и пишем их на js.
Я делаю так, узнаю тип устройства и пишу для него скрипт!

if(Мобильное устройство или планшет){
то по клику вызываю выпадающий список
} else {
по ховеру
}
Ответ написан
Комментировать
deleted-tnorman
@deleted-tnorman
наверно нужно пересмотреть конструкцию меню с учетом сенсорных устройств.
Доработать его с использовать всякие onTouch события и по надобности отключать дефолтное выполнение нажатия на ссылку.
Но мне кажется, что текущий вариант в любом случае придется, либо видоизменить, либо обрабатывать скриптом дополнительно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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