Вы должны использовать как window.onbeforeunload
, так и window.onunload
. onbeforeunload
возвращает строку, и браузер отображает подтверждение перед выходом. Если пользователь подтвердит выход, будет запущено onunload
, а затем вы сделаете то, что вам нужно, прежде чем страница будет выгружена.
window.onbeforeunload = function() {
return "Are you sure you want to leave?";
};
window.onunload = function() {
func1();
};
Существуют ограничения на то, что вы можете делать в обоих этих обработчиках событий, потому что вы не можете запретить пользователю покидать страницу, если он действительно этого хочет. Вредоносное ПО использовало эти события для повторного открытия страницы, теперь это запрещено.