use*_*688 5 javascript onchange event-listener addeventlistener
是否有一个 eventListener 只是检查innerText的变化?
例子:
12345
我只想检查“12345”是否正在更改为“23415”之类的其他内容。
不会出现“点击”事件或其他任何事件。我没有机会通过跨度更新即将到来的代码。所以我真的只能从 span 元素的变化中获取事件,但我不知道如何。
抱歉我的英语不好,谢谢!
查看MutationObserver。使用它你可以监听被观察元素的变化characterData。例子:
<span class="observable" contenteditable="true">12345</span>
Run Code Online (Sandbox Code Playgroud)
var observables = document.querySelector('.observable');
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation);
});
});
var config = {characterData: true, subtree: true};
observer.observe(observables, config);
Run Code Online (Sandbox Code Playgroud)
请注意,subtree必须是true因为文本实际上是被观察元素的子元素。