繁体   English   中英

Opera 的 DOM 更改事件

[英]DOM change event for Opera

到目前为止,我发现了如何在 Chrome 中执行此操作,即DOMSubtreeModified事件: 是否有 JavaScript/jQuery DOM 更改侦听器?

显然它也适用于 Firefox 和 IE 9。

你知道在Opera等其他浏览器中检测DOM变化的解决方案吗? 如果 IE 可能是旧版本,因为我确定上面的事件在 IE 6-7-8 中不起作用......

或者你知道我可以使用的其他事件吗? 我基本上是在寻找一种方法来检测某些元素是否已通过 ajax 请求插入到文档中...

Opera 支持DOMNodeInsertedDOMNodeRemoved突变事件。 我测试过,他们也在 Firefox 和 G. Chrome 上工作。

$(document).bind("DOMNodeInserted, DOMNodeRemoved", function() {
    alert("DOM changed");
});

如果您针对多个浏览器,也许您可​​以检查Mordenizr是否对 DOM 突变事件支持进行任何检测,它可以帮助您简化这些决策。

onreadystatechange将在 IE8 及以下版本中工作。 DHTML 行为必须通过 htc 附加到元素,但 htc 文件不必存在:

if (!!document.addEventListener)
  {
  $(document.documentElement).get(0).addEventListener("DOMNodeInserted", bar, false);
  }
else
  {
  $(document.documentElement).get(0).addBehavior("foo.htc");
  $(document.documentElement).get(0).attachEvent("onreadystatechange", bar);
  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM