@zzxxxxzz

Почему при скролле нажимаются ссылки в адаптивном шаблоне?

Здравствуйте. Был адаптивный шаблон на DLE. Перенес его на wordpress. На wp возникла проблема при работе с мобильными устройствами. При прокрутке любой страницы сразу происходит нажатие на ссылку, которая была под пальцем в момент скролла. Не знаю как точнее описать...лучше посмотреть. Сайт: lechenie-kemerovo.ru
Может у wp есть какие-то особенности в этом плане?(никогда не работал с ним)
Или я что-то не так сделал?
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
SmthTo
@SmthTo
Все перепёлки мира будут оплакивать мою смерть
function toggleSubmenuDisplay() {
    document.addEventListener('touchstart', function(event) {
        // ВОТ ЭТОТ КУСОК -- НАЧАЛО
        if (event.target.matches('a')) {
            var url = event.target.getAttribute('href') ? event.target.getAttribute('href') : '';
            if ('#' !== url && '' !== url) {
                window.location = url;
            } else if ('#' === url && event.target.nextSibling.matches('.submenu-expand')) {
                openSubMenu(event.target);
            } else {
                event.preventDefault();
            }
        }
        // ВОТ ЭТОТ КУСОК -- КОНЕЦ

    ...

Из-за него это всё. Нужно переписать, либо убрать его нафиг. Он все ссылки обрабатывает. С учетом того, что я в разметке не вижу элементов с классом submenu-expand, я бы закомментировал целиком этот участок и посмотрел, что сломалось. Если ничего не сломалось, так бы и оставил.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
anatoly_kulikov
@anatoly_kulikov
Веб-разработчик
Сейчас от моего имени пишет Капитан, однако что имеется: при скролле на мобильном касание к экрану и запускает функцию, из-за чего ссылка и срабатывает. Выход на самом деле видится один - убрать скрипт.

У WP нет никаких особенностей, он просто достает данные из БД. Как они отображаются и что с ними происходит - это вопрос к теме (и разработчику).
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Email Soldiers Рязань
от 35 000 до 70 000 руб.
Serenity Санкт-Петербург
от 50 000 до 120 000 руб.
WayToStart Москва
от 40 000 до 70 000 руб.