IE9没有触发DOMCharacterDataModified事件

时间:2013-08-23 17:35:10

标签: javascript event-listener dom-events

我有一个div元素,它根据jquery数据表的当前状态动态更改。例如,当过滤时,它显示“显示145个条目中的1到100个(从1,064个条目中过滤掉)”。

根据其中一个表的加载方式,1,064会产生误导,因为返回的记录是1,064,记录按组划分,所以你看到的最多就是266,所以“显示1到100的145个条目(从266个条目中过滤掉)“。

需要所有1,064而不仅仅是一个组的原因是你可以在组之间切换,它通过过滤组号列来实现。

由于误导的数字,我有一个DOMCharacterDataModified监听器,它将div中的文本修改为正确的数字。问题是执行该操作的代码也用于另一个加载相同记录但能够通过一些正则表达式过滤查看所有组的表。

现在所有这些在chrome中都很完美,但是在IE9中不会触发DOMCharacterDataModified。

侦听器功能

function testFunct() {
   debugger;
   var pause = "";
}

div。

var doc = document.getElementById("tMain_info");

听众。

doc.addEventListener("DOMCharacterDataModified", testFunct);

也试过了。

doc.attachEvent("DOMCharacterDataModified", testFunct);

但这不起作用,导致chrome出错。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

似乎每个微软很多突变事件都不再在IE9及更高版本中发生。也就是说,如果DocumentMode是IE9或更高版本,则DOMCharacterDataModified将不会启动。

我自己正在开发一个IE11 BHO,我观察到一些突变事件,如DOMCharacterDataModified没有触发。 看看链接。

您似乎可以使用Mutation Event Observers。 结帐link2 IE Event Technical Specs

Migrating From Mutation Events to Mutation Event Observers.