jQuery .on函数为将来的元素,因为.live被弃用
我需要为将来的<div>元素的click事件添加一个处理程序,这个元素还不存在。 通常情况下,我会使用jQuery的.live函数来处理这个问题,但似乎现在不推荐使用.on 。 
 为了以这种方式使用.on方法,jQuerybuild议设置selector参数,以允许创build委托事件,并提供以下代码示例: 
 $("#dataTable tbody").on("click", "tr", function(event){ alert($(this).text()); }); 
 这一切都很好,但我为什么我的初始select器,他们有#dataTable tbody ? 请注意$.on()不起作用。 
jQuery的文档显示你会replace
 $(selector).live(event, handler) 
同
 $(document).on(event, selector, handler). 
 你也可以select更精确的选项,用元素的静态父元素replace$(document) 。 例如,如果你有一个静态table元素, tr元素被dynamic添加到DOM,你可以做一些像$('table#id').on('click', 'tr', ...) 
只要我发布这个问题,我就明白了…对不起!
 最初的select器可以是任何父元素。 因为我的元素将是身体的直接的孩子,我可以使用body作为select器: 
 $('body').on('click', '.my_class', function(event) { ... 
 这是有效的,因为事件将会泡起来。 这基本上是用.my_class额外的filter正常冒泡的。