Java + DOM:注册和使用修改监听器:教程?

jav*_*top 4 java xml events dom addeventlistener

请指出一些有关如何使用 Java的DOM实现注册和使用修改侦听器的教程或其他解释示例.

在网络上我只找到Javascript或Flex示例.

我的目标是了解Node修改时间.

我尝试了几种方法,没有任何作用.可能是Java的DOM不支持这个功能吗?

jav*_*top 7

得到它了!

铸造就是诀窍!

我一直在寻找实现org.w3.dom.events.EventTarget,但似乎只有内部类实现它.所以它只需要手工铸造(通过假设Node instanceof EventTarget).

org.w3c.dom.events.EventListener myModificationListener =
  new org.w3c.dom.events.EventListener() {

    @Override
    public void handleEvent(Event e) {
      if (e instanceof MutationEvent) {
        MutationEvent me = (MutationEvent) e;
        System.out.println("type: " + me.getType()
          + ", dest: " + me.getTarget());
      }
    }

  };

Node someDomNode = ...

// here the unusual casting magic happens
((EventTarget) node).addEventListener(
  "DOMSubtreeModified", // constant
  myModificationListener, true);

// modify the node here by appending a child
// -> listener gets invoked
Run Code Online (Sandbox Code Playgroud)