【发布时间】:2012-10-24 01:24:03
【问题描述】:
我有一个内容可编辑的 div,其中包含一些 html 元素。例如,假设我有:
<div contenteditable="true" id="myTextArea">
Some content, <div id="div1">content in div</div>,
and more <span id="span1">content</span></div>
当用户在 myTextArea 中编辑文本并删除一些 html 元素(通过粘贴新内容或只是退格文本)时,我希望每个 html 元素触发一个事件并告诉我它已被删除。关于我如何做到这一点的任何想法?
【问题讨论】:
-
查看相关问题的答案:stackoverflow.com/a/5614764/1615483
-
这里是
MutationObserver的 MDN 页面,你会对removedNodes感兴趣。 -
好吧,“输入”事件似乎没有给我实际导致事件的对象,并且 DOMNodeRemoved 似乎有问题(或者我不明白它是如何工作的),因为它只是有时有效(例如,在跨度上,很少在 div 上)。有人有这个工作吗?我总是可以比较差异,看看输入事件后发生了什么变化,但我觉得必须有更好的方法来做到这一点。
标签: javascript html events