jQuery - 元素创建的触发事件

时间:2012-07-10 09:12:04

标签: jquery events

jQuery中是否有一个事件触发dom元素创建?我尝试加载,但这不适用于例如跨度。

3 个答案:

答案 0 :(得分:1)

您可以尝试DOMNodeInserted事件:

  

当除了Attr节点之外的节点已添加为另一个节点的子节点时,用户代理必须调度此事件类型。当Attr节点已添加到Element节点时,用户代理可以调度此事件。插入发生后必须发送此事件。此事件的事件目标必须是要插入的节点。

$(document).bind('DOMNodeInserted', function(){
     ...
})

答案 1 :(得分:0)

很少有可以帮到你的参考资料, http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-mutationevents https://github.com/jollytoad/jquery.mutation-events

但是你想要实现的是目前所有框架都在做什么,比如ember,angularjs等等。我建议你学习其中一个特别有棱角的我觉得你想要达到它的直接答案就在那里。

答案 2 :(得分:0)

你可以将元素创建的功能带到闭包中,并在创建一个新元素时触发另一个函数,例如

 var newElement=function(newElement){ 
                     var k=$(newElement);//Create a new element
/*You can add extra operations to the element*/
                     triggerFunction(someVariable); //Function triggered after the creation of new element
                     };

var triggerFunction=function(someVariable){//Some function};

希望下面的代码很好地解释了这种情况。这里我们有一个观察者,只要创建一个新元素就会被触发。