@rtorcato/browser-common / dom
dom
Functions
$()
$(
selector,parent?):Element|null
Defined in: dom/index.ts:12
Selects a single element by CSS selector.
Parameters
selector
string
The CSS selector.
parent?
Element | Document
The parent element to search within (defaults to document).
Returns
Element | null
The first matching element or null.
Example
import { $ } from '@rtorcato/browser-common/dom'
const btn = $('button.primary')
$$()
$$(
selector,parent?):Element[]
Defined in: dom/index.ts:27
Selects all elements matching a CSS selector.
Parameters
selector
string
The CSS selector.
parent?
Element | Document
The parent element to search within (defaults to document).
Returns
Element[]
An array of matching elements.
Example
import { $$ } from '@rtorcato/browser-common/dom'
const items = $$('.item')
createElement()
createElement<
K>(tag,props?, ...children):HTMLElementTagNameMap[K]
Defined in: dom/index.ts:43
Creates a new DOM element with optional properties and children.
Type Parameters
K
K extends keyof HTMLElementTagNameMap
Parameters
tag
K
The tag name.
props?
Partial<HTMLElementTagNameMap[K]> = {}
Optional properties/attributes.
children
...(string | HTMLElement)[]
Optional child elements or strings.
Returns
HTMLElementTagNameMap[K]
The created element.
Example
import { createElement } from '@rtorcato/browser-common/dom'
const btn = createElement('button', { className: 'primary' }, 'Save')
removeElement()
removeElement(
el):void
Defined in: dom/index.ts:65
Removes an element from the DOM.
Parameters
el
Element
The element to remove.
Returns
void
Example
import { removeElement } from '@rtorcato/browser-common/dom'
removeElement(document.querySelector('.toast')!)
setAttributes()
setAttributes(
el,attrs):void
Defined in: dom/index.ts:81
Sets multiple attributes on an element.
Parameters
el
Element
The element.
attrs
Record<string, string>
An object of attribute key-value pairs.
Returns
void
Example
import { setAttributes } from '@rtorcato/browser-common/dom'
setAttributes(input, { type: 'email', required: 'true' })
addClass()
addClass(
el, ...classes):void
Defined in: dom/index.ts:97
Adds one or more classes to an element.
Parameters
el
Element
The element.
classes
...string[]
The classes to add.
Returns
void
Example
import { addClass } from '@rtorcato/browser-common/dom'
addClass(el, 'active', 'highlighted')
removeClass()
removeClass(
el, ...classes):void
Defined in: dom/index.ts:111
Removes one or more classes from an element.
Parameters
el
Element
The element.
classes
...string[]
The classes to remove.
Returns
void
Example
import { removeClass } from '@rtorcato/browser-common/dom'
removeClass(el, 'hidden')
toggleClass()
toggleClass(
el,className,force?):boolean
Defined in: dom/index.ts:127
Toggles a class on an element.
Parameters
el
Element
The element.
className
string
The class to toggle.
force?
boolean
Optional boolean to force add/remove.
Returns
boolean
True if the class is now present, false otherwise.
Example
import { toggleClass } from '@rtorcato/browser-common/dom'
const isOpen = toggleClass(panel, 'open')
hasClass()
hasClass(
el,className):boolean
Defined in: dom/index.ts:142
Checks if an element has a specific class.
Parameters
el
Element
The element.
className
string
The class to check.
Returns
boolean
True if the element has the class, false otherwise.
Example
import { hasClass } from '@rtorcato/browser-common/dom'
if (hasClass(el, 'active')) doSomething()
getData()
getData(
el,key):string|undefined
Defined in: dom/index.ts:157
Gets the value of a data-* attribute from an element.
Parameters
el
HTMLElement
The element.
key
string
The data attribute key (without 'data-').
Returns
string | undefined
The value or undefined.
Example
import { getData } from '@rtorcato/browser-common/dom'
const id = getData(el, 'userId')
setData()
setData(
el,key,value):void
Defined in: dom/index.ts:172
Sets the value of a data-* attribute on an element.
Parameters
el
HTMLElement
The element.
key
string
The data attribute key (without 'data-').
value
string
The value to set.
Returns
void
Example
import { setData } from '@rtorcato/browser-common/dom'
setData(el, 'userId', '42')