|
|
- /**
- * Converts any DOM node/s to a loopable array
- * @param { HTMLElement|NodeList } els - single html element or a node list
- * @returns { Array } always a loopable object
- */
- export default function domToArray(els) {
- // can this object be already looped?
- if (!Array.isArray(els)) {
- // is it a node list?
- if (
- /^\[object (HTMLCollection|NodeList|Object)\]$/
- .test(Object.prototype.toString.call(els))
- && typeof els.length === 'number'
- )
- return Array.from(els)
- else
- // if it's a single node
- // it will be returned as "array" with one single entry
- return [els]
- }
- // this object could be looped out of the box
- return els
- }
|