[英]Observing contents of a specific DIV
有没有一种方法可以观察特定DIV的内容,我想在DIV的内容更改后立即调用一个函数。
这可以是innerHTML替换,也可以是页面加载。
谢谢
在现代浏览器中,您可以使用DOM突变事件,例如DOMSubtreeModified
, DOMCharacterDataModified
。 在IE中,您可以使用onchange
事件。 对于所有其他浏览器,您可以设置一个计时器以检查内容是否已更改。
您可以将元素的内容与先前的值进行比较。
检索要观看的元素
var div = document.getElementById("w");
创建观察者:
var w1 = { watch: null, prev: div.innerHTML };
启动观察程序。 每100毫秒,它将把先前的值与当前值进行比较,如果不同,它将更新该值并触发任何动作。
function Watch(w, e)
{
w.watch = setInterval(function() {
if (e.innerHTML != w.prev)
{
w.prev = e.innerHTML;
alert("changed");
}
}, 100);
}
Watch(w1, div);
在此页面中 ,它说,DIV的内容被修改时应触发OnChange。
观察div的变化不是有效的技术。 您是否考虑过获得将DIV的内容更改为触发和事件的代码?
另外,您可以设置一个计时器来监视div中的更改并触发某些事件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.