【发布时间】:2018-05-02 20:33:17
【问题描述】:
我想在div 元素的innerHTML 发生变化时触发一个函数。
一直在用element.addEventListener('DOMCharacterDataModified', myFunction()); 进行测试,但它似乎无法正常工作。它在页面加载时触发一次,但之后再也不会触发?请参阅下面的示例代码。
有人可以解决我的任务吗?非常感谢任何帮助!
任务:
- 我有一个空的
div。 - 它会随机接收来自外部来源(我无法控制)的数据。
- 每次innerHTML发生变化时,我都想触发
myFunction()。
我当前的示例代码:
var element = document.getElementById('div');
element.addEventListener('DOMCharacterDataModified', myFunction());
function myFunction() {
console.log(element.innerHTML);
}
setTimeout(function(){
element.innerHTML = 'Hello World!';
}, 1000);
setTimeout(function(){
element.innerHTML = 'Hello Space!';
}, 2000);
setTimeouts 可视化来自外部源的数据。
如果可能,它只需要是 JS,但如果 真的 需要,可以使用 jQuery。
提前致谢!
// 接线
【问题讨论】:
-
如果您能向我们展示代码将会很有帮助
-
你通常需要一个 MutationObserver,除此之外,你需要尝试一些东西并提出一个特定的问题。
-
@JegadeshBS 我现在添加了一些示例代码并完善了我的问题。
-
.change事件? -
@RonRoyston AFAK,它仅适用于
input类型的元素。不适用于我需要它的divs。
标签: javascript html function innerhtml addeventlistener