https://github.com/meteor/html5
Event-driven HTML5 Parser in Javascript
https://github.com/meteor/html5
Last synced: 5 months ago
JSON representation
Event-driven HTML5 Parser in Javascript
- Host: GitHub
- URL: https://github.com/meteor/html5
- Owner: meteor
- License: mit
- Fork: true (aredridel/html5)
- Created: 2013-09-18T17:30:53.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-09-18T15:02:34.000Z (over 11 years ago)
- Last Synced: 2024-09-25T13:04:48.623Z (9 months ago)
- Language: JavaScript
- Homepage: http://dinhe.net/~aredridel/projects/js/html5/
- Size: 3.74 MB
- Stars: 1
- Watchers: 15
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
HTML5 Parser for node.js
========================Example (With jQuery!)
----------------------/* Before you run this, run:
git submodule update --init
(cd deps/jquery; rake)
*/
var HTML5 = require('html5'),
Script = process.binding('evals').Script,
util = require('util'),
fs = require('fs'),
jsdom = require('jsdom'),
window = jsdom.jsdom(null, null, {parser: HTML5}).createWindow()var parser = new HTML5.Parser({document: window.document});
var inputfile = fs.readFileSync('doc/jquery-example.html');
parser.parse(inputfile);jsdom.jQueryify(window, __dirname + '/deps/jquery/dist/jquery.js', function(window, jquery) {
Script.runInNewContext('jQuery("p").append("Hi!")', window);
util.puts(window.document.innerHTML);});
Interesting features
--------------------* Streaming parser: You can pass `parser.parse` an `EventEmitter` and the
parser will keep adding data as it's received.* HTML5 parsing algorithm. If you find something this can't parse, I'll want
to know about it. It should make sense out of anything a browser can.Installation
-------------Use `npm`, or to use the git checkout, read on.
You'll need to fetch dependencies or initialize git submodules if you're
pulling this from my git repository.npm install
and give it a run:
npm test
(At time of this writing, 1800 tests pass)
Git repository at http://dinhe.net/~aredridel/projects/js/html5.git/