Jquery对动态生成的元素绑定事件

本文探讨了在jQuery中使用live()事件绑定方法,解决了动态生成元素后绑定事件的问题,并详细列举了支持的事件类型及注意事项。

查询 Jquery api中的 .live()事件;

很多时候我们对一个对象绑定一个事件的时候老是发现绑定不成功,这时你可以查查看这个对像是不是你通过Jquery动态生成的。

jQuery的html()可以给现在元素附加新的元素,innerHTML也可以,那么,如何给这些新生成的元素绑定事件呢?直接在元素还未生成前就绑定肯定是无效的,因为所绑定的元素目前根本不存在。

然而,jQuery为我们提供了一个函数来解决这个问题,它就是.live(),它可以给所有元素绑定事件,不论是已有的,还是将来生成的,比如:

$(‘#div’).live(‘click’,function(){

//do stuff

});

它还可以同时绑定多个事件:

$('.hoverme').live('mouseover mouseout', function(event) {
  if (event.type == 'mouseover') {
    // do something on mouseover
  } else {
    // do something on mouseout
  }
});
注意:
目前支持 click, dblclick, mousedown, mouseup, mousemove, mouseover, mouseout, keydown, keypress, keyup。 
还不支持 blur, focus, mouseenter, mouseleave, change, submit 

这个非常重要。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值