Starck43
@Starck43
Full-stack разработчик (Python, React)

Почему в истории браузера при переходе между страницами дублируются состояния?

Утро доброе. Впервые столкнулся с проблемой дубликатов истории состояний браузеров. Если двигаться назад, то надо дважды нажимать кнопку возврат, а вперёд с первого раза переходит. Сам состояния History state нигде не добавляю и не меняю.
Сайт пишу на WordPress, установлена тема PHLOX, есть WooCommerce и PREMMERCE фильтр.

Может кто сталкивался с подобным ? Это могут плагины вмешиваться через Ajax ? Или может кто подскажет какими средствами это отловить ? Спасибо.
  • Вопрос задан
  • 656 просмотров
Решения вопроса 2
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Можно мониторить изменения через devtools
в консоли выполните
monitor(history.pushState)
5ea2d720de04b351011812.png
Ответ написан
Starck43
@Starck43 Автор вопроса
Full-stack разработчик (Python, React)
Вообщем решения выше подсказали. Поискал и нашел, чт у плагина PREMMERCE WOOCOMMERCE FILTER
в файле скриптов есть такой кусок кода:
function ajaxUpdate(link, action) {

    var requestData = {'premmerce_filter_ajax_action': action};
    var spin = action === 'reload';

    $.ajax({
        'method': 'POST',
        'data': requestData,
        'url': link,
        'dataType': 'json',
        success: function (response) {
            history.pushState({}, null, link);

            initScrolls();
            initSliders();
        }
    });


Отключил ее опцией в настройках "Отложенная загрузка". Так и не понял для чего впихнули разрабы ее.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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