HTML::DOM::Node - A Perl class for representing the nodes of an HTML DOM tree
use HTML::DOM::Node ':all'; # constants
use HTML::DOM;
$doc = HTML::DOM->new;
$doc->isa('HTML::DOM::Node'); # true
$doc->nodeType == DOCUMENT_NODE; # true
$doc->firstChild;
$doc->childNodes;
# etc
This is the base class for all nodes in an HTML::DOM tree. (See "CLASSES
AND DOM INTERFACES" in HTML::DOM.) It implements the Node interface, and,
indirectly, the EventTarget interface (see HTML::DOM::EventTarget.
The following DOM attributes are supported:
- nodeName
- nodeType
- These two are implemented not by HTML::DOM::Node itself, but by its
subclasses.
- nodeValue
- parentNode
- childNodes
- firstChild
- lastChild
- previousSibling
- nextSibling
- attributes
- ownerDocument
- namespaceURI
- prefix
- localName
- Those last three always return nothing.
There is also a
"_set_ownerDocument" method, which you
probably do not need to know about.
See the DOM spec. for descriptions of most of these. The first four
automatically trigger mutation events. (See HTML::DOM::Event::Mutation.)
- insertBefore
- replaceChild
- removeChild
- appendChild
- hasChildNodes
- cloneNode
- normalize
- hasAttributes
- isSupported
- trigger_event
- This overrides HTML::DOM::EventTarget's (non-DOM) method of the same name,
so that the document's default event handler is called.
- as_text
- as_HTML
- These two (non-DOM) methods of HTML::Element are overridden, so that they
work correctly with comment and text nodes.
The following node type constants are exportable:
- ELEMENT_NODE (1)
- ATTRIBUTE_NODE (2)
- TEXT_NODE (3)
- CDATA_SECTION_NODE (4)
- ENTITY_REFERENCE_NODE (5)
- ENTITY_NODE (6)
- PROCESSING_INSTRUCTION_NODE (7)
- COMMENT_NODE (8)
- DOCUMENT_NODE (9)
- DOCUMENT_TYPE_NODE (10)
- DOCUMENT_FRAGMENT_NODE (11)
- NOTATION_NODE (12)
HTML::DOM
HTML::DOM::EventTarget