select-dom
Lightweight
querySelector
/All
wrapper that outputs an Array
Version 7+ only supports browsers with iterable NodeList
s. If you need IE support, stick to select-dom@6
or lower.
Install
npm install select-dom
// This module is only offered as a ES Module
import select from 'select-dom';
API
Note: if a falsy value is passed as baseElement
, you'll always get an empty result (bd578b9)
select(selector[, baseElement = document])
Maps to baseElement.querySelector(selector)
, except it returns undefined
if it's not found
select('.foo a[href=bar]');
// => <Element>
select('.foo a[href=bar]', baseElement);
// => <Element>
select('.non-existent', baseElement);
// => undefined
select.last(selector[, baseElement = document])
Like select()
, except that it returns the last matching item on the page instead of the first one.
select.exists(selector[, baseElement = document])
Tests the existence of one or more elements matching the selector. It's like select()
, except it returns a boolean
.
select.exists('.foo a[href=bar]');
// => true/false
select.exists('.foo a[href=bar]', baseElement);
// => true/false
select.all(selector[, baseElements = document])
Maps to baseElements.querySelectorAll(selector)
plus:
- it always returns an array
baseElements
can be a list of elements to query
select.all('.foo');
// => [<Element>, <Element>, <Element>]
select.all('.foo', baseElement);
// => [<Element>, <Element>, <Element>]
select.all('.foo', [baseElement1, baseElement2]);
// => [<Element>, <Element>, <Element>]
// This is similar to jQuery([baseElement1, baseElement2]).find('.foo')
Related
- delegate-it - DOM event delegation, in <1KB.
- doma - Parse an HTML string into
DocumentFragment
or oneElement
, in a few bytes. - Refined GitHub - Uses this module.