JSPM

  • Created
  • Published
  • Downloads 440
  • Score
    100M100P100Q107426F
  • 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 gzipped size Travis build status npm version 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

Examples

const select = require('select-dom')

select()

select('.foo a[href=bar]')
// => <Element>

select('.foo a[href=bar]', baseElement)
// => <Element>

select.exists()

select.exists('.foo a[href=bar]')
// => true/false

select.exists('.foo a[href=bar]', baseElement)
// => true/false

select.all()

select.all('.foo a[href=bar]')
// => [<Element>, <Element>, <Element>]

select.all('.foo a[href=bar]', baseElement)
// => [<Element>, <Element>, <Element>]

select.all('.foo a[href=bar]', [baseElement1, baseElement2])
// => [<Element>, <Element>, <Element>]

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)

select.exists(selector[, baseElement = document])

Tests the existence of one or more elements matching the selector.

select.all(selector[, baseElements = document])

Maps to baseElements.querySelectorAll(selector) plus:

  • it always returns an array
  • baseElements can be an element, an array of elements, or NodeList

This lets you search through an existing list of elements, like:

const baseElements = select.all('.baseElements').filter(Math.random);
select.all('.foo a[href=bar]', baseElements);