Demonstrates how to handle the window's focus and blur events.
This code does not depend on any third-party libraries like jQuery.
Demonstrates how to handle the window's focus and blur events.
This code does not depend on any third-party libraries like jQuery.
| 'use strict'; | |
| // Create `myApp` namespace. | |
| window.myApp = { | |
| // Function to use for the `focus` event. | |
| onFocus: function () { | |
| // Append message to the `body` element. | |
| document.body.appendChild( | |
| document.createTextNode('The window has focus.')); | |
| // Add a line break. | |
| document.body.appendChild(document.createElement('br')); | |
| }, | |
| // Function to use for the `blur` event. | |
| onBlur: function () { | |
| // Append message to the `body` element. | |
| document.body.appendChild( | |
| document.createTextNode('The window has lost focus.')); | |
| // Add a line break. | |
| document.body.appendChild(document.createElement('br')); | |
| } | |
| }; | |
| /* Detect if the browser supports `addEventListener` | |
| Complies with DOM Event specification. */ | |
| if(window.addEventListener) { | |
| // Handle window's `load` event. | |
| window.addEventListener('load', function () { | |
| // Wire up the `focus` and `blur` event handlers. | |
| window.addEventListener('focus', window.myApp.onFocus); | |
| window.addEventListener('blur', window.myApp.onBlur); | |
| }); | |
| } | |
| /* Detect if the browser supports `attachEvent` | |
| Only Internet Explorer browsers support that. */ | |
| else if(window.attachEvent) { | |
| // Handle window's `load` event. | |
| window.attachEvent('onload', function () { | |
| // Wire up the `focus` and `blur` event handlers. | |
| window.attachEvent('onfocus', window.myApp.onFocus); | |
| window.attachEvent('onblur', window.myApp.onBlur); | |
| }); | |
| } | |
| /* If neither event handler function exists, then overwrite | |
| the built-in event handers. With this technique any previous event | |
| handlers are lost. */ | |
| else { | |
| // Handle window's `load` event. | |
| window.onload = function () { | |
| // Wire up the `focus` and `blur` event handlers. | |
| window.onfocus = window.myApp.onFocus; | |
| window.onblur = window.myApp.onBlur; | |
| }; | |
| } |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <meta charset="utf-8" /> | |
| <title>Window Focus Example</title> | |
| </head> | |
| <body> | |
| <p>Click anywhere in the browser's viewport to trigger the <code>focus</code> event.</p> | |
| <p>Click on something other than the browser's viewport to trigger the <code>blur</code> event.</p> | |
| <script src="app.js"></script> | |
| </body> | |
| </html> |
This is great. Thank you