UserDataHandler - Node.setUserData() 的参数的处理程序
已过时 Gecko 26 (Firefox 26 / Thunderbird 26 / SeaMonkey 2.23 / Firefox OS 1.2)
此功能已过时。虽然它可能仍在某些浏览器中工作,但是不鼓励使用,因为它可能随时被删除。尽量避免使用它。
此功能已过时。虽然它可能仍在某些浏览器中工作,但是不鼓励使用,因为它可能随时被删除。尽量避免使用它。
概要
调用 Node.setUserData()
将用户数据与节点上的键关联时,可以在其第三个参数中接受一个处理程序,当克隆,导入,删除,重命名或采用该对象时,该处理程序将被调用。根据规范,不应在 UserDataHandler
中抛出异常。在 document.importNode()
和 Node.cloneNode()
中,尽管未复制用户数据,但是仍会调用该处理程序。
属性
无。
方法
handle (operation, key, data, src, dst)
(无返回值)
如果要克隆,导入,重命名以及删除或采用某个节点,则将调用此方法。
operation
(unsigned short) 是操作类型(请参见下文)。key
(DOMString
) 是用户的键。data
(DOMUserData
) 是用户数据。src
(Node
) 是源节点(如果删除则为null
)。dst
(Node
) 是目标节点(如果没有则为null
)。
常量
常量 | 值 | 操作 |
---|---|---|
NODE_CLONED |
1 | Node.cloneNode() |
NODE_IMPORTED |
2 | Document.importNode() |
NODE_DELETED 未实现 (查看 Mozilla bug 550400) |
3 | - |
NODE_RENAMED 未实现 |
4 | Node.renameNode() |
NODE_ADOPTED |
5 | Document.adoptNode() |
(由于不支持 Node.renameNode()
,因此目前不支持 NODE_RENAMED
。)
规范
DOM Level 3 Core: UserDataHandler
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 不支持 | 不支持 | 4 — 22 | 未知 | 不支持 | 不支持 |
handle | 不支持 | 不支持 | 4 — 22 | 未知 | 不支持 | 不支持 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 不支持 | 不支持 | 未知 | 4 — 22 | 未知 | 不支持 | 不支持 |
handle | 不支持 | 不支持 | 未知 | 4 — 22 | 未知 | 不支持 | 不支持 |