vanillajs-browser-helpers
Version:
Collection of convenience code snippets (helpers) that aims to make it a little easier to work with vanilla JS in the browser
30 lines (29 loc) • 920 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.docComplete = void 0;
var once_1 = __importDefault(require("./once"));
function docComplete() {
var readyState = document.readyState;
return readyState === 'interactive' || readyState === 'complete';
}
exports.docComplete = docComplete;
/**
* Execute a given function once the document has finished loading
*
* @param handler - Function to execute once the document has finished loading
*
* @example
*
* ```ts
* domReady((e: Event) => { alert('DOM Ready') });
* ```
*/
function domReady(handler) {
docComplete()
? handler()
: (0, once_1.default)('readystatechange', handler, { when: docComplete });
}
exports.default = domReady;