HTML::DOM::Element - A Perl class for representing elements in an HTML DOM tree


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 the HTML::DOM manpage.) 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 the class attribute.

style

This returns a the CSS::DOM::Style manpage object, representing the contents of the 'style' HTML 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 $named attribute.

getAttributeNode ( $name )

Returns an attribute node (the HTML::DOM::Attr manpage).

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.

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 the HTML::DOM::Node manpage's method to trigger a DOMActivate event after a click.


SEE ALSO

the HTML::DOM manpage

the HTML::DOM::Node manpage

the HTML::Element manpage

All the HTML::Element subclasses listed under CLASSES AND DOM INTERFACES in the HTML::DOM manpage