A DOM implementation in CoffeeScript, full CSS3 support.
Intended for use in NodeJS.
I haven't checked the actual DOM compliance, but everything you need is there:
- Full CSS3 support via NWMatcher.
- A very tiny HTML parser.
- DOM-compliant event binding and triggering (bubbling, cancelling, etc).
- Coming soon: (optional) Mutation Events.
This is not a fork of jsdom.
It assumes the document is going to act like it would in a browser (e.g. it automatically gets a head and body).
No attempt has been made to support XML or Xpath or anything exotic.
document = require('jldom').createDocument() document.body.innerHTML = "<div>Hello, World.</div>" document.toString() === "<html><head/><body><div>Hello, World.</div></body></html>" document.querySelector("div").toString() === "<div>Hello, World.</div>"
npm install jldom
git clone git://github.com/jldailey/jldom.git cd jldom make