Spaces:
Sleeping
Sleeping
| ; | |
| var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); | |
| exports.__esModule = true; | |
| exports.default = activeElement; | |
| var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); | |
| /** | |
| * Returns the actively focused element safely. | |
| * | |
| * @param doc the document to check | |
| */ | |
| function activeElement(doc) { | |
| if (doc === void 0) { | |
| doc = (0, _ownerDocument.default)(); | |
| } | |
| // 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; | |
| } | |
| } | |
| module.exports = exports["default"]; |