The beforeunload event is fired when the window, the document and its resources are about to be unloaded.
When a non-empty string is assigned to the returnValue Event property, a dialog box appears, asking the users for confirmation to leave the page (see example below). When no value is provided, the event is processed silently.
General info
- Specification
- HTML5
- Interface
- Event
- Bubbles
- No
- Cancelable
- Yes
- Target
- defaultView
- Default Action
- Varies (prompts the user for confirmation to leave the page).
Properties
| Property | Type | Description |
|---|---|---|
target Read only |
EventTarget |
The event target (the topmost target in the DOM tree). |
type Read only |
DOMString |
The type of event. |
bubbles Read only |
boolean |
Does the event normally bubble? |
cancelable Read only |
boolean |
Is it possible to cancel the event? |
Example
window.addEventListener("beforeunload", function( event ) {
event.returnValue = "\o/";
});
//is equivalent to
window.addEventListener("beforeunload", function( event ) {
event.preventDefault();
});
Webkit-based browsers don't follow the spec for the dialog box. An almost cross-browser working example would be close to the below example.
window.addEventListener("beforeunload", function (e) {
var confirmationMessage = "\o/";
(e || window.event).returnValue = confirmationMessage; //Gecko + IE
return confirmationMessage; //Webkit, Safari, Chrome etc.
});
Related Events
Reference