使用javascript告诉节点何时发生变化?

时间:2011-11-25 14:59:42

标签: javascript events javascript-events

我是否可以观察HTML在<tr>标记内的变化?

我不能使用JQuery,原型或任何其他框架。

一旦内容发生变化,我就需要采取行动,并坚持如何处理。

2 个答案:

答案 0 :(得分:2)

您可以使用计时器监控DOM:

var currentDOM = getCurrentStatus(); // made that up

var timer = setInterval(function() {
  var newDOM = getCurrentStatus();
  if (currentDOM !== newDOM) {
    // do whatever
    currentDOM = newDOM;
  }
}, 100);

那将每隔100ms检查一次内容。如果你需要做很多工作来弄清楚DOM是否已被更改,那可能会太快,因为它可能会使客户端机器变得迟钝。

如果您需要,可以稍后取消该活动:

clearInterval( timer );

答案 1 :(得分:1)

根据普通javascript进行的变更检测应该是存储初始值并在一个时间间隔内对其进行检查的问题。如果有其他人知道更好的方式,我想听听。当然,jquery对于那些类型的应用程序来说是强大的,但是由于你不能使用它,我会坚持我的上述答案。