NAME
HTML::DOM::Element - A Perl class for representing elements in an HTML DOM tree
SYNOPSIS
use HTML::DOM;
$doc = HTML::DOM->new;
$elem = $doc->createElement('a');
$elem->setAttribute('href', 'http://www.perl.org/');
$elem->getAttribute('href');
$elem->tagName;
# etc
DESCRIPTION
This class represents elements in an HTML::DOM tree. It is the base class for other element classes (see "CLASSES AND DOM INTERFACES" in HTML::DOM.) It implements the Element and HTMLElement DOM interfaces.
METHODS
Constructor
You should normally use HTML::DOM's createElement
method. This is listed here only for completeness:
$elem = new HTML::DOM::Element $tag_name;
$elem
will automatically be blessed into the appropriate class for $tag_name
.
Attributes
The following DOM attributes are supported:
- tagName
-
Returns the tag name.
- id
- title
- lang
- dir
- className
-
These five get (optionally set) the corresponding HTML attributes. Note that
className
corresponds to theclass
attribute. - style
-
This returns a CSS::DOM::Style object, representing the contents of the 'style' HTML attribute.
And there is also the following non-DOM attribute:
- content_offset
-
This contains the offset (in characters) within the HTML source of the element's first child node, if it is a text node. This is set (indirectly) by HTML::DOM's
write
method. You can also set it yourself.
Other Methods
- getAttribute ( $name )
-
Returns the attribute's value as a string.
- setAttribute ( $name, $value )
-
Sets the attribute named
$name
to$value
. - removeAttribute ( $name )
-
Deletes the
$name
d attribute. - getAttributeNode ( $name )
-
Returns an attribute node (HTML::DOM::Attr).
- setAttributeNode ( $attr )
-
Sets the attribute whose name is
$attr->nodeName
to the attribute object itself. If it replaces another attribute object, the latter is returned. - removeAttributeNode ( $attr )
-
Removes and returns the
$attr
. - getElementsByTagName ( $tagname)
-
This finds all elements with that tag name under the current element, returning them as a list in list context or a node list object in scalar context.
- getElementsByClassName ( $names )
-
This finds all elements whose class attribute contains all the names in
$names
, which is a space-separated list; returning the elements as a list in list context or a node list object in scalar context. - hasAttribute ( $name )
-
Returns true or false, indicating whether this element has an attribute named
$name
, even one that is implied. - click() (HTML 5)
-
This triggers a click event on the element; nothing more.
- trigger_event
-
This overrides HTML::DOM::Node's method to trigger a DOMActivate event after a click.
SEE ALSO
All the HTML::Element subclasses listed under "CLASSES AND DOM INTERFACES" in HTML::DOM