JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 269
  • Score
    100M100P100Q84900F
  • License MIT

Get the parents of the element, optionally filtered by a selector.

Package Exports

  • dom-parents
  • dom-parents/index.js

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 (dom-parents) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

dom-parents

Get the parents of the element, optionally filtered by a selector.

Install

npm install --save dom-parents

Examples

Apply action to all parent elements

import getParents from 'dom-parents';

getParents(document.querySelector('#main'), '.cat').forEach((element) => {
  element.style.backgroundColor = '#008800';
})

Check the existence of parents

import getParents from 'dom-parents';

document.querySelectorAll('.animal').forEach((element) => {
  element.addEventListener('mousedown', () => {
    const isBobAnAnimal = getParents(this, '.animals').length !== 0;
    if (isBobAnAnimal) {
      console.log('Bob is animal');
    } else {
      console.log('Bob is spy!');
    }
  });
});

If the user clicks on an .item element

import getParents from 'dom-parents';

document.addEventListener('mousedown', (event) => {
  const [item] = getParents(event.target, '.item', true);
  if (item) {
    console.log('mousedown on .item element');
  }
});

API

getParents(element, selector, includeElement = false)

Returns the parents of the element, optionally filtered by a selector.

element

Type: object

The element from which the search should start.

selector

Type: string

Selector to search for the parent elements.

includeElement

Type: bool

Default: false

Include element to the search or not.