Files
snippets-ts/lib/domUtils.ts

33 lines
717 B
TypeScript

export const addGlobalEventListener = (
type: string,
selector: string,
callback: (arg0: Event) => void,
options: boolean | AddEventListenerOptions,
parent = document
): void => {
parent.addEventListener(
type,
(e: Event) => {
if (e != null && e.target != null) {
const el = e.target as Element
if (el.matches(selector)) callback(e)
}
},
options
)
}
export const qs = (
selector: string | keyof HTMLElementTagNameMap,
parent = document
): Element => {
return parent.querySelector(selector)
}
export const qsa = (
selector: string | keyof HTMLElementTagNameMap,
parent = document
): Element[] => {
return [...parent.querySelectorAll(selector)]
}