我发一些帖子请求创建一些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版本的问题)
答案 0 :(得分:1)
$(document).on("click", ".mydiv", function(){
//triggers some events
});
阅读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/