在div更改时触发jQuery事件

我有一个div,其内容可能以各种方式改变:例如,其整个内容可以通过innerHTML重新加载,或者节点可以通过DOM方法添加。这反过来可能通过本机javascript或通过调用jQuery API或通过其他库间接发生。


我希望在div的内容改变为执行一些代码,但我绝对没有控制上如何将改变。事实上,我正在设计一个可供其他人使用的小部件,他们可以按自己喜欢的方式随意更改div的内容。当此div的内部内容发生更改时,可能还必须更新窗口小部件的形状。


我正在使用jQuery。有没有办法捕获这个div的内容已经改变的事件,但它发生了吗?


Smart猫小萌
浏览 1840回答 3
3回答

守着一只汪

尝试这样的事......    $('#divId').bind('DOMNodeInserted', function(event) {             alert('inserted ' + event.target.nodeName + // new node           ' in ' + event.relatedNode.nodeName); // parent       });IE不支持这个propertychange属性,但我认为离这个最近的是事件,它响应元素的属性或CSS属性的变化而触发,但是它不会响应innerHTML的变化而触发,这会产生一直接近你想要的。一个更可行的解决方案是覆盖jquery的操作函数...看看这个讨论。修改尚未创建的元素的首选方法(除了事件)
打开App,查看更多内容
随时随地看视频慕课网APP