Я хочу закрыть всплывающее окно с цветовым окном при нажатии кнопки "Назад" в браузере.

Я использовал iframe, и внутри него много ссылок. Когда пользователь нажимает на определенную ссылку, открывается всплывающее окно с цветовым окном.

В настоящее время после открытия всплывающего окна, если пользователь нажимает кнопку «Назад», всплывающее окно не закрывается.

Поэтому мне нужна такая функциональность, чтобы, если пользователь нажмет кнопку «Назад», всплывающее окно будет закрыто, а также страница не должна возвращаться назад (Отключить кнопку «Назад»).

Я использовал следующий код, но у меня он не работает.

<script>
    $(document).ready(function() {
        function disableBack() { window.history.forward() }

        window.onload = disableBack();
        window.onpageshow = function(evt) { if (evt.persisted) disableBack() }
    });
</script>

Пожалуйста, дайте мне любое предложение закрыть всплывающее окно с цветным окном на кнопке возврата или полностью отключить кнопку возврата.

3
arun kamboj 20 Дек 2016 в 09:32

1 ответ

Лучший ответ

Вам следует использовать window.location.hash и window.onhashchange. По сути, после открытия всплывающего окна вы меняете хеш на что-то (например, window.location.hash = "popup_opend").

Затем, когда пользователь щелкнет обратно, этот обратный щелчок удалит только что добавленный хеш. Вам просто нужно обработать window.onhashchange, чтобы проверить это и закрыть всплывающее окно.

Конечно, надеюсь, у вас нет другого кода, который манипулирует хешем.

1
vothaison 26 Дек 2016 в 13:15