* Iterate over each of the provided element(s). * * @param {HTMLElement|HTMLElement[]} elements * @param {Function} callback
(elements, callback)
| 50 | * @param {Function} callback |
| 51 | */ |
| 52 | function forEachElement(elements, callback){ |
| 53 | var elementsType = Object.prototype.toString.call(elements); |
| 54 | var isCollectionTyped = ('[object Array]' === elementsType |
| 55 | || ('[object NodeList]' === elementsType) |
| 56 | || ('[object HTMLCollection]' === elementsType) |
| 57 | || ('[object Object]' === elementsType) |
| 58 | || ('undefined' !== typeof jQuery && elements instanceof jQuery) //jquery |
| 59 | || ('undefined' !== typeof Elements && elements instanceof Elements) //mootools |
| 60 | ); |
| 61 | var i = 0, j = elements.length; |
| 62 | if (isCollectionTyped) { |
| 63 | for (; i < j; i++) { |
| 64 | callback(elements[i]); |
| 65 | } |
| 66 | } else { |
| 67 | callback(elements); |
| 68 | } |
| 69 | } |
| 70 | |
| 71 | /** |
| 72 | * Get element size |
no outgoing calls
no test coverage detected