Spaces:
Sleeping
Sleeping
| import ownerDocument from './ownerDocument'; | |
| /** | |
| * Returns the actively focused element safely. | |
| * | |
| * @param doc the document to check | |
| */ | |
| export default function activeElement(doc) { | |
| if (doc === void 0) { | |
| doc = ownerDocument(); | |
| } | |
| // Support: IE 9 only | |
| // IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe> | |
| try { | |
| var active = doc.activeElement; // IE11 returns a seemingly empty object in some cases when accessing | |
| // document.activeElement from an <iframe> | |
| if (!active || !active.nodeName) return null; | |
| return active; | |
| } catch (e) { | |
| /* ie throws if no active element */ | |
| return doc.body; | |
| } | |
| } |