使用jQuery自动将事件处理程序添加到新创建的元素
在文档就绪时,我将此事件处理程序附加到具有类bubbleItemOff的所有元素。 我的问题是在触发文档就绪事件后动态创建了一些bubbleItemOff元素。
有没有办法自动将事件处理程序添加到新创建的元素中,或者在创建元素后是否必须显式执行此操作?
$(function() { $('.bubbleItemOff').mouseenter(function(e) { //... }); });
使用on()
方法在公共父元素on()
使用事件委托(假设您正在使用jQuery 1.7.x +),例如
$(function() { $('body').on('mouseenter', '.bubbleItemOff', function(e) { ... } }
如果您使用的是旧版本,请使用delegate()
。 使用.bubbleItemOff
的第一个公共父元素更改body
您可以在委托事件方法中使用jQuery方法:
$(".parentItem").on("mouseenter", ".bubbleItemOff", function(e) { // });
这里.parentItem
引用.bubbleItemOff
任何父.bubbleItemOff
。