How to Detect Window Close Event in Javascript

In web development, being able to detect when a user is trying to close the window or tab can be a useful feature. By detecting the window close event, you can prompt the user with a message or take certain actions to provide a better user experience.

To detect the window close event in JavaScript, we can use two event listeners: beforeunload and unload. The beforeunload event is fired when the window or tab is about to be closed, while the unload event is fired when the window or tab is already closed. Both events can be used to execute JavaScript code before the window is closed, allowing you to warn the user about unsaved changes or ask for confirmation before closing the window.

To add a beforeunload event listener, we can use the following code:

window.addEventListener('beforeunload', function (event) {
  // your code here
});

The event listener takes a callback function as an argument, which will be executed when the beforeunload event is fired. In the callback function, you can write code to prompt the user with a message or take any other actions before the window is closed.

Similarly, to add an unload event listener, we can use the following code:

window.addEventListener('unload', function (event) {
  // your code here
});

The unload event listener works in a similar way as the beforeunload event listener, but is fired after the window is closed. This event can be used to perform cleanup actions, such as releasing resources or updating server-side data.

It’s important to note that the beforeunload and unload event listeners have limitations and browser-specific behaviors that may affect their use. Additionally, some browsers may not allow you to customize the message shown to the user when the window is about to be closed. Nevertheless, these event listeners can still be useful in providing a better user experience and improving the functionality of your web applications.