bianco.attr
Version:
Helper to set/get/remove DOM attributes on a list of nodes
161 lines (103 loc) • 6.14 kB
Markdown
[![Build Status][ci-image]][ci-url]
[![NPM version][npm-version-image]][npm-url]
[![NPM downloads][npm-downloads-image]][npm-url]
[![MIT License][license-image]][license-url]
```js
import { set, get, has, remove } from 'bianco.attr'
// set an attribute on a node
const img = document.createElement('img')
set(img, 'width', 100)
get(img, 'width') // => '100'
has(img, 'width') // => true
remove(img, 'width')
get(img, 'width') // => null
```
[]:https://img.shields.io/github/workflow/status/biancojs/attr/test?style=flat-square
[]:https://github.com/biancojs/attr/actions
[]: http://img.shields.io/badge/license-MIT-000000.svg?style=flat-square
[]: LICENSE.txt
[]: http://img.shields.io/npm/v/bianco.attr.svg?style=flat-square
[]: http://img.shields.io/npm/dm/bianco.attr.svg?style=flat-square
[]: https://npmjs.org/package/bianco.attr
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
- [set](
- [Parameters](
- [Examples](
- [get](
- [Parameters](
- [Examples](
- [remove](
- [Parameters](
- [Examples](
- [has](
- [Parameters](
- [Examples](
Set any attribute on a single or a list of DOM nodes
- `els` **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** DOM node/s to parse
- `name` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object))** either the name of the attribute to set
or a list of properties as object key - value
- `value` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** the new value of the attribute (optional)
```javascript
import { set } from 'bianco.attr'
const img = document.createElement('img')
set(img, 'width', 100)
// or also
set(img, {
width: 300,
height: 300
})
```
Returns **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** the original array of elements passed to this function
Get any attribute from a single or a list of DOM nodes
- `els` **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** DOM node/s to parse
- `name` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** name or list of attributes to get
```javascript
import { get } from 'bianco.attr'
const img = document.createElement('img')
get(img, 'width') // => '200'
// or also
get(img, ['width', 'height']) // => ['200', '300']
// or also
get([img1, img2], ['width', 'height']) // => [['200', '300'], ['500', '200']]
```
Returns **([Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array) \| [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String))** list of the attributes found
Remove any attribute from a single or a list of DOM nodes
- `els` **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** DOM node/s to parse
- `name` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** name or list of attributes to remove
```javascript
import { remove } from 'bianco.attr'
remove(img, 'width') // remove the width attribute
// or also
remove(img, ['width', 'height']) // remove the width and the height attribute
// or also
remove([img1, img2], ['width', 'height']) // remove the width and the height attribute from both images
```
Returns **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** the original array of elements passed to this function
Set any attribute on a single or a list of DOM nodes
- `els` **([HTMLElement](https://developer.mozilla.org/docs/Web/HTML/Element) \| [NodeList](https://developer.mozilla.org/docs/Web/API/NodeList) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** DOM node/s to parse
- `name` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** name or list of attributes to detect
```javascript
import { has } from 'bianco.attr'
has(img, 'width') // false
// or also
has(img, ['width', 'height']) // => [false, false]
// or also
has([img1, img2], ['width', 'height']) // => [[false, false], [false, false]]
```
Returns **([boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean) \| [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array))** true or false or an array of boolean values