com.izaakschroeder.dom

A simple implementation of the DOM.

DOM

A simple and lightweight implementation of the DOM for node.js. Working on implementing DOM levels 1, 2, 3 and 4; capable of using both XML and HTML5 semantics.

XML semantics provided by "sax".

HTML5 semantics provided by "com.izaakschroeder.html5".

var 
//Load the library 
DOM = require('com.izaakschroeder.dom'),
//Load filesystem support 
fs = require('fs'),
//Read a file 
stream = fs.createReadStream('./some-file.html');
 
//Parse the file 
DOM.parse(stream, function(errdocument) {
//Unrecoverable error 
if (err && !document)
throw new Error();
 
//Errors, but we still have a document 
if (err)
console.log("Warning: errors encountered.");
 
//Do some basic work 
document.querySelectorAll("div").forEach(function(node) {
console.log(node.tagName);
})
})