views:

50

answers:

1

I have went through couple of questions already asked related with this and i have found two common approach.
1. Have global element and update it by attaching onFocus() event to each of the element.
2. document.activeElement and have following code to update the element in case of old browser which do not support the property

var focusedElement;
document.addEventListener("focus", function(e) {
    focusedElement = e.target;
}, true);
document.addEventListener("blur", function(e) {
    focusedElement = null;
}, true);

Now my question is which one is more correct/easy/efficient approach of above two? why? Thanks all,

+1  A: 

Your solution 1 is horribly inefficient. Attaching an event handler to each and every (focusable) element on the page when you could attach to the body itself? That is not the correct/easy/efficient way to do it for sure. Solution 2 looks pretty good.

Alsciende