Javascript 如何在删除dom节点、修改属性时添加侦听器?

Javascript 如何在删除dom节点、修改属性时添加侦听器?,javascript,jquery,dom,listener,dom-events,Javascript,Jquery,Dom,Listener,Dom Events,我想在dom节点添加/删除和属性修改上添加一个侦听器,因为我主要为模块动态生成dom元素 如下图所示,webkit这样做意味着这些侦听器存在 如果有任何jQuery函数,请通知 谢谢。事实上,对于webkits开发工具可以做的任何事情,你都不能指望Javascript有一个方法或监听器。它是一个内置的调试器和控制台,其可能性远远超出此范围 然而,也有这种所谓的突变事件,参见 一个典型的电话看起来像 document.getElementsById( 'foo' ).addEventListen

我想在dom节点添加/删除和属性修改上添加一个侦听器,因为我主要为模块动态生成dom元素

如下图所示,
webkit
这样做意味着这些侦听器存在

如果有任何jQuery函数,请通知


谢谢。

事实上,对于webkits开发工具可以做的任何事情,你都不能指望Javascript有一个方法或监听器。它是一个内置的调试器和控制台,其可能性远远超出此范围

然而,也有这种所谓的突变事件,参见

一个典型的电话看起来像

document.getElementsById( 'foo' ).addEventListener('DOMAttrModified', function( e ) {
}, false);

它将在id为foo的节点的任何属性更改时触发。请注意,突变事件已弃用,将来可能无法以当前形式提供。

对于属性更改事件,您可以尝试以下操作

对于添加/删除事件,您可以执行以下操作:


+1.值得一提的是,替换DOM变异事件的API是。新API仍然涵盖了属性更改。此外,IE中不支持DOM变异事件
$el.on('attribute:change', function () {...});
$el.attr('selected', 'selected').trigger('attribute:change');
(function() {
    var ev = new $.Event('remove'),
    orig = $.fn.remove;

    $.fn.remove = function() {
        $(this).trigger(ev);
        return orig.apply(this, arguments);
    }
})();