Le_Traceur_Snork
@Le_Traceur_Snork
PHP-программист | Wordpress

Как избавиться от blockUI блокировки после возврата со страницы оплаты через браузерную кнопку «Назад»?

Сетап:
1. PHP 8.1 на Апаче
2. Wordpress 6.1.1
3. WooCommerce 7.2.2

Проблема: со страницы /checkout/ переходим на страницу оплаты (внешняя платёжка), возвращаемся через браузерную кнопку назад и происходит следующее:
1. Нормальные браузеры снова прогоняют скрипты WooCommerce, видят, что форма заполнена корректно и снимают блокировку от jQuery-blockUI
2. Сафари 14.0+ берёт страницу из кэша, даже если страница прямым текстом заблокировала кэши (через хэдеры), при этом скрипты он заново не запускает и получается, что блокировочный интерфейс висит бесконечно, пока не перезагрузишь страницу целиком

Идея была в том, чтобы цеплять eventListener на события типа unload или beforeunload, но проблема, опять же, в том, что все нормальные браузеры эти события обрабатывают нормально, а Safari просто не реагирует на них - смена адреса страницы не триггерит ни одно из списка:
unload onunload beforeunload onbeforeunload beforenavigate navigate


Если кто сталкивался с подобной проблемой - прошу помочь. Казалось бы, очевидная задача, но бьюсь с ней уже второй день, все идеи кончились и StackOverflow не помогает
  • Вопрос задан
  • 78 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы