{{ DomRef() }}
Summary
When associating user data with a key on a node, Node.setUserData()
can also accept, in its third argument, a handler which will be called when the object is cloned, imported, deleted, renamed, or adopted. Per the specification, exceptions should not be thrown in a UserDataHandler
. In both document.importNode()
and Node.cloneNode()
, although user data is not copied over, the handler will be called.
Properties
None.
Methods
handle (operation, key, data, src, dst)
(no return value)
This method is a callback which will be called if a node is being cloned, imported, renamed and as well, if deleted or adopted.
operation
(unsigned short) is an operation type integer (see below).key
({{ domxref("DOMString") }}) is the user key.data
({{ domxref("DOMUserData") }}) is the user data.src
({{ domxref("Node") }}) is the source node (null
if being deleted).dst
({{ domxref("Node") }}) is the destination node (if any, ornull
).
Constants
Constant | Value | Operation |
---|---|---|
NODE_CLONED |
1 | Node.cloneNode() |
NODE_IMPORTED |
2 | Document.importNode() |
NODE_DELETED {{ unimplemented_inline("550400") }} |
3 | |
NODE_RENAMED {{ unimplemented_inline() }} |
4 | Node.renameNode() |
NODE_ADOPTED |
5 | Document.adoptNode() |
(NODE_RENAMED
is currently not supported since Node.renameNode()
is not supported.)
Specification
DOM Level 3 Core: UserDataHandler