Javascript 我可以用什么来代替DOMSubtreeModified?
我正在为opera编写一个用户脚本,opera不支持, 子树修改是否有其他方法 注意:我正在寻找一个只使用javascript的解决方案。(不是jquery或任何javascript库)Javascript 我可以用什么来代替DOMSubtreeModified?,javascript,dom,opera,userscripts,Javascript,Dom,Opera,Userscripts,我正在为opera编写一个用户脚本,opera不支持, 子树修改是否有其他方法 注意:我正在寻找一个只使用javascript的解决方案。(不是jquery或任何javascript库) 谢谢。针对您真正关心的节点,然后使用间隔计时器检查更改 关键是选择感兴趣的节点,例如: <div id="content"><p class="author"> ... </p> ... </div> 您的用户实际使用Opera的百分比是多少?想想这个问题:
谢谢。针对您真正关心的节点,然后使用间隔计时器检查更改 关键是选择感兴趣的节点,例如:
<div id="content"><p class="author"> ... </p>
...
</div>
您的用户实际使用Opera的百分比是多少?想想这个问题:它真的值得吗?
setInterval (MyNodeCheckFunc, 500);
function MyNodeCheckFunc ()
{
var newNodeList = [];
this.oldNodeList = this.oldNodeList || [];
var targetNodes = document.querySelectorAll ('VALID CSS-STYLE SELECTOR');
if (targetNodes && targetNodes.length > 0)
{
/*--- Found target node(s). Go through each and act if they
are new.
*/
for (var J = targetNodes.length - 1; J >= 0; --J)
{
var targNode = targetNodes[J];
newNodeList.push (targNode);
if (! targNode.weHaveProcessed)
{
targNode.weHaveProcessed = true;
//// DO STUFF FOR NEW NODE.
}
}
}
/*/// HERE, COMPARE newNodeList TO oldNodeList.
1) If an item is in oldNodeList, but not in newNodeList,
do any DELETED NODE action.
2) If an item is in a different order from oldNodeList
to newNodeList, do any MOVED NODE action.
*/
this.oldNodeList = newNodeList;
}