| HTML-DOM documentation | Contained in the HTML-DOM distribution. |
HTML::DOM::Event::Mutation - A Perl class for HTML DOM mutation event objects
# ...
This class provides MutationEvent objects for HTML::DOM, which objects are passed to event handlers for certain event types when they are invoked. It inherits from HTML::DOM::Event.
See also those inherited from HTML::DOM::Event.
These are all read-only and ignore their arguments.
This holds the parent node for DOMNodeInserted and DOMNodeRemoved events, and the Attr node involved for a DOMAttrModified event.
The previous value for DOMAttrModified and DOMCharacterDataModified events.
The new value for the same two event types.
The name of the affected attribute for DOMAttrModified events.
This initialises the event object. See initEvent in HTML::DOM::Event for more detail.
Alternative to initMutationEvent that's easier to use:
init $event
type => $type,
propagates_up => 1,
cancellable => 1,
rel_node => $node,
new_value => $foo,
prev_value => $bar,
attr_name => $name,
attr_change_type => HTML::DOM::Event::Mutation::REMOVAL,
;
The following constants are exported upon request, either individually or with the ':all' tag. They indicated the type of change that a DOMAttrModified event represents.
| HTML-DOM documentation | Contained in the HTML-DOM distribution. |
package HTML::DOM::Event::Mutation; our $VERSION = '0.048'; use warnings; no warnings qw 'utf8 parenthesis'; use strict; require HTML::DOM::Event; our @ISA = HTML::DOM::Event::; use constant 1.03 { ADDITION=>2, MODIFICATION=>1, REMOVAL=>3 }; use Exporter 5.57 'import'; our @EXPORT_OK = qw 'ADDITION MODIFICATION REMOVAL'; our %EXPORT_TAGS = (all => \@EXPORT_OK); sub relatedNode { $_[0]{rel_node }||() } sub prevValue { $_[0]{prev_value } } sub newValue { $_[0]{new_value } } sub attrName { $_[0]{attr_name } } sub attrChange { $_[0]{attr_change_type } } sub initMutationEvent { my $self = $_[0]; my $x; $self->init(map +($_ => $_[++$x]), qw( type propagates_up cancellable rel_node prev_value new_value attr_name attr_change_type ) ); return; } sub init { my $self = shift; my %args = @_; my %my_args = map +($_ => delete $args{$_}), qw( rel_node prev_value new_value attr_name attr_change_type ); $self->SUPER::init(%args); %$self = (%$self, %my_args); return; } *|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*|||*| __END__