HTML::DOM, version 0.017
HTML::DOM is a Perl implementation of the HTML Document Object Model
This is an alpha release. So far, the level-2 core and HTML DOM
interfaces have been implemented, and some of the level-2 event and
style sheet interfaces.
CHANGES IN THIS RELEASE
New features/miscellaneous changes:
• innerHTML is now writable.
• Mutation events are now triggered automatic-
ally by HTML::DOM::Element’s various get/set/
removeAttribute(node) methods. It does not yet
happen with the shorthand methods (those named
after the attributes; aka the DOM Level 0
interface).
• Modification of the contents of a text or comment node now triggers
a DOMCharacterDataModified event.
• The EventTarget interface is now a separate module from Node, so
that anything can inherit from it.
• Event attribute methods ($elem->onclick, etc.) have been added.
• An Attr node can now be used as an EventTarget.
• Assigning a value to an Attr node now modifies its child text node
in place instead of replacing it.
Bug fixes--see the Changes file.
TO DO
- Finish Level 2 Events support
- Finish Level 2 CSS support
- Finish DOM Level 0 event support (add event properties)
- outerHTML?
- Other DOM interfaces (the rest of level 2, and level 3)
- Support callback routines for creating DOM objects for frames.
- HTML 5 stuff
- Add the EventTarget interface to Attr
- Write more complete documentation
- Write more tests
INSTALLATION
The easiest way to install this module is to use the CPAN module or
the cpan script:
[sudo] perl -MCPAN -e "install HTML::DOM"
[sudo] cpan HTML::DOM
Or you can use the following:
perl Makefile.PL
make
make test
[sudo] make install
DEPENDENCIES
This module requires perl 5.8.2 or later and the following
Perl modules:
- Scalar::Util 1.14 or later
- Exporter 5.57 or later
- HTML::TreeBuilder and HTML::Element (both part of the HTML::Tree
distribution) (tested with 3.23)
- URI (tested with 1.35)
- LWP 1.13 or later
- CSS::DOM 0.05 or later
- HTML::Encoding is required if the parse_file method is to be used.
- constant::lexical
- Hash::Util::FieldHash::Compat
DOCUMENTATION
After installing, you can find documentation for this module with the
perldoc command.
perldoc HTML::DOM
Or try using man (it's faster, in my experience):
man HTML::DOM
COPYRIGHT AND LICENCE
Copyright (C) 2007-8 Father Chrysostomos
This program is free software; you may redistribute it and/or modify
it under the same terms as perl.