BeforeUnloadEvent
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Событие beforeunload (en: перед_выгрузкой) происходит (непосредственно) перед выгрузкой окна, документа и их ресурсов.
Если присвоено ненулевое значение свойству returnValue Event, всплывает диалоговое окно: "Вы действительно хотите покинуть эту страницу?" (см. пример ниже). Если значение не присвоено, то событие не отображается. В некоторых случаях диалоговое окно всплывает только после взаимодействия пользователя с фреймом или любым встроенным фреймом. См. детали Browser compatibility
| Всплывающие окна | Нет | 
| Возможность отмены | Да | 
| Целевые Объекты | defaultView | 
| Интерфейс | Event | 
Примеры
window.addEventListener("beforeunload", function (event) {
  event.returnValue = "\\o/";
});
//is equivalent to
window.addEventListener("beforeunload", function (event) {
  event.preventDefault();
});
Webkit-based browsers не следуют спецификации диалоговых окон . Самый кросс-браузерный работающий пример выглядит примерно так: см. ниже.
window.addEventListener("beforeunload", function (e) {
  var confirmationMessage = "\\o/";
  (e || window.event).returnValue = confirmationMessage; //Gecko + IE
  return confirmationMessage; //Webkit, Safari, Chrome etc.
});
Спецификации
| Specification | 
|---|
| HTML> # the-beforeunloadevent-interface> | 
Совместимость с браузерами
Loading…