https://github.com/alexeyraspopov/dom-walker
DOM Walker based on TreeWalker API
https://github.com/alexeyraspopov/dom-walker
Last synced: about 2 months ago
JSON representation
DOM Walker based on TreeWalker API
- Host: GitHub
- URL: https://github.com/alexeyraspopov/dom-walker
- Owner: alexeyraspopov
- Created: 2014-04-21T07:33:44.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2014-04-21T13:01:59.000Z (over 11 years ago)
- Last Synced: 2025-09-01T08:57:48.358Z (about 2 months ago)
- Language: JavaScript
- Homepage:
- Size: 180 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# dom-walker
DOM Walker based on [TreeWalker](https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker)
## Install
```bash
$ component install alexeyraspopov/dom-walker
```
```bash
$ bower install dom-walker
```
## API
walk(root, process, options);
* `root` - start element
* `process` - processing function
* `node` - current node
* `next` - iterator function (go to next node)
* `direction` (optional) - which node should be next (`'node'` by default). `'node'` goes to next node (including nested) and `'sibling'` goes to next sibling node (avoiding nested nodes)
* `options` (optional)
* `acceptNode` - [TreeWalker filter function](https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker.filter). Accept all elements by default
* `whatToShow` - [TreeWalker option](https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker.whatToShow). `NodeFilter.SHOW_ELEMENT` by default
## Usage
```javascript
var walk = require('dom-walker');
var root = document.getElementById('viewport');
walk(root, function(node, next){
console.log(node);
next();
});
```
## License
[MIT License](http://en.wikipedia.org/wiki/MIT_License) (c) Alexey Raspopov