JSPM

  • Created
  • Published
  • Downloads 528
  • Score
    100M100P100Q107368F
  • License MIT

Extra lightweight DOM selector helper

Package Exports

  • select-dom

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (select-dom) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

select-dom npm downloads

Lightweight querySelector/All wrapper that outputs an Array

Version 5+ only supports browsers with Set support. If you need IE 10- support, stick to select-dom@4

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')
  • delegate-it - DOM event delegation, in <1KB.
  • doma - Parse an HTML string into DocumentFragment or one Element, in a few bytes.
  • Refined GitHub - Uses this module.