DOMCharacterDataModifiedをひろって、編集した内容をプログラムでさらに変更しようというための試み
2013/01/06
2013/01/07
dom
HTMLEditor
java
DOMCharacterDataModifiedをひろって、編集した内容をプログラムでさらに変更しようというための試みのためのメモ
ためしたのはJavaFXのHTMLEditorのwebkitです。
DOMNodeInsertedを設定したあと、insertされたnodeごとにDOMCharacterDataModifiedを設定してゆく。
この方法をとると、Textをもつ子ノードの親ノードまでイベントを発行するので、setCancelBubbleをtrueにイベントの発行をとめるようにすると該当の変更だけ受け取ることができた。
さて、つぎに対象のテキストの変更がどのノードでおこっているのかを知るのは、
org.w3c.dom.events.Eventにある
getCurrentTarget()
現在
EventListeners
を処理しているEventTarget
を示す場合に使用します。
getTarget()
イベントが最初にディスパッチされた
EventTarget
を示す場合に使用します。
を使う。DOMCharacterDataModifiedでおこるEventでは、getTargetがTextノードとなる。getCurrentTargetには、Textノードを内包している親ノードとなるので、ここからDOMツリーのどこの部分かわかる。
: