Единственный реальный способ остановить пользователя при выходе из страницы, когда он пытается выйти, - это использовать обработчик onunload, который отображает одно из тех ужасных окон с предупреждениями, когда вы нажимаете Ok или Cancel.Это считается плохой практикой, если вы не спасаете пользователя от потери данных, и даже тогда полезность сомнительна.
Хорошие манеры в Интернете диктуют, что пользователю разрешено покидать вашу страницу.когда они сочтут нужным, без навязывания всплывающих окон или сообщений об ошибках.Если вы хотите захватить часть этого потерянного трафика, рассмотрите возможность использования таймера или чего-либо связанного с этим, чтобы показать наложение на странице, предлагающей клиенту что-то для проживания (код купона и т. Д.).