Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 976231 of BeforeUnloadEvent

  • Revision slug: Web/API/BeforeUnloadEvent
  • Revision title: BeforeUnloadEvent
  • Revision id: 976231
  • Created:
  • Creator: fscholz
  • Is current revision? Yes
  • Comment This is actually the interface page and not the event page.

Revision Content

{{APIRef}}

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.

Bubbles No
Cancelable Yes
Target objects defaultView
Interface {{domxref("Event")}}

Examples

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.
});

See also

Revision Source

<p>{{APIRef}}</p>

<p>The <strong><code>beforeunload</code></strong> event is fired when the window, the document and its resources are about to be unloaded.</p>

<p>When a non-empty string is assigned to the <code>returnValue</code> 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.</p>

<table class="properties">
 <tbody>
  <tr>
   <td>Bubbles</td>
   <td>No</td>
  </tr>
  <tr>
   <td>Cancelable</td>
   <td>Yes</td>
  </tr>
  <tr>
   <td>Target objects</td>
   <td>defaultView</td>
  </tr>
  <tr>
   <td>Interface</td>
   <td>{{domxref("Event")}}</td>
  </tr>
 </tbody>
</table>

<h2 id="Examples">Examples</h2>

<pre class="brush:js;">
window.addEventListener("beforeunload", function( event ) {
  event.returnValue = "\o/";
});

//is equivalent to
window.addEventListener("beforeunload", function( event ) {
  event.preventDefault();
});</pre>

<p>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.</p>

<pre class="brush: js">
window.addEventListener("beforeunload", function (e) {
  var confirmationMessage = "\o/";

  (e || window.event).returnValue = confirmationMessage;     //Gecko + IE
  return confirmationMessage;                                //Webkit, Safari, Chrome etc.
});</pre>

<h2 id="See_also">See also</h2>

<ul>
 <li>{{Event("DOMContentLoaded")}}</li>
 <li>{{Event("readystatechange")}}</li>
 <li>{{Event("load")}}</li>
 <li>{{Event("beforeunload")}}</li>
 <li>{{Event("unload")}}</li>
 <li><a href="https://www.whatwg.org/specs/web-apps/current-work/#prompt-to-unload-a-document" title="https://www.whatwg.org/specs/web-apps/current-work/#prompt-to-unload-a-document">Unloading Documents — Prompt to unload a document</a></li>
</ul>
Revert to this revision