После вызова history.pushState
в Safari на iOS больше нельзя использовать alert()
, confirm()
или prompt()
при использовании кнопки "Назад" в браузере.
Это ошибка iOS? Есть ли какие-нибудь известные обходные пути?
Простой пример для воспроизведения этого поведения:
<html>
<body>
<ul>
<li>Step 1: <button onclick="alert(Math.random())">Confirm Alert is working</button></li>
<li>Step 2: <button onclick="history.pushState(null, null, '/debug/'+Math.random());">Change History</button></li>
<li>Step 3: use your browser back button, to go back</li>
<li>Step 4: <button onclick="alert(Math.random())">Alert is not working anymore</button></li>
</ul>
</body>
</html>
Вы можете попробовать это онлайн здесь: goo.gl/faFW6o.