div上的听力事件即时创建

时间:2013-02-08 12:45:17

标签: javascript jquery onclick

我发一些帖子请求创建一些div,我在上面点击事件来触发事件。 Leet采用这些新创建的div'.mydiv',我不能使用$('#mydiv')。on('click'..)因为它是动态创建的,所以我使用

$(document).click(".mydiv", function(){
            //triggers some events
        });

但是现在$(this)引用了'document'对象,所以我无法获得被点击的div并触发相关事件。我怎么能这样做?

编辑:看起来非常有趣,因为我首先调用一个创建thds的函数,这就是我称之为click侦听器的函数。在这些条件下:$(document).on(“click”,“。mydiv”,...)不起作用。但是当后者直接放在html页面中时,它的工作正常。 (所以至少它不是jquery版本的问题)

3 个答案:

答案 0 :(得分:1)

$(document).on("click", ".mydiv", function(){
        //triggers some events
});

http://api.jquery.com/on/

阅读Direct and delegated events部分

//  doc or Parent   |    event   |  dyn. created el 
$(    document    ).on( "click"  ,     ".mydiv",      function(){
        //triggers some events
});

答案 1 :(得分:0)

你也可以尝试:

$(".mydiv").live("click", function(){
            //triggers some events
        });

答案 2 :(得分:0)

JQuery有一种方法可以在这种情况下绑定选择器上的事件。

.live('event', 'handler to be executed') : Attach an event handler for all elements which match the current selector, now and in the future.

检查这个小提琴:http://jsfiddle.net/ff5UJ/