2013-07-18 53 views
0

我想动态地添加一些CSS类到一些我没有控制的元素创建。我知道我正在寻找的div将会像这样添加:mydiv.appendChild(resdiv)。但是,我无法在创建代码时添加代码。我知道这个动态添加的div的每个实例都会有一个特定的CSS类(我们称之为output-class)。我理论上可以将CSS规则添加到特定的类,但我宁愿不 - 它会导致很多样式的重复。jQuery事件监听器插入一个元素特定的类

我想要做的就是在页面中添加output-class类的div时立即触发事件。我正在尝试添加更多的CSS类。这是我到目前为止:

jQuery('body').on('DOMNodeInserted', ".output-class", function(event) { 
    var el = $(this); 
    el.addClass('my new class'); 
    // do some more manipulation of the new div (el). 
}); 

但是,据我所知,此回调从未被调用。我究竟做错了什么?

+0

强权帮助呢? http://stackoverflow.com/questions/6814219/jquery-use-element-with-domnodeinserted – DevlshOne

+0

如果你的DOM元素是通过AJAX请求成功/完成回调添加的,你可以设置一个全局的ajaxComplete事件处理程序来检查这些元素被添加。 – Derek

+0

可以帮忙:http://jsfiddle.net/gabrieleromanato/XaTCh/ – sdespont

回答

2

有涉及DOM插入包括this one包含以下代码的几个相关问题:

document.addEventListener("DOMNodeInserted", function(event) { 
    alert($(event.target).parent()[0].tagName); 
});