jquery之动态绑定事件



       从开始工作的时候就想着要写博客,但因为一些原因未能去实行。现在已经工作快两年了,然而很多东西查了一遍又一遍,总是不能记住,所以我觉得还是应该要养成写博客的良好习惯,这样不仅对增强自己的记忆,还可以帮助后来人。所以从现在开始每周至少要写两到三遍博客,呵呵,可能有点少,但慢慢来吧,相信我也可以成为一名java技术大牛,废话不多说了,现在来看看我对jquery之动态绑定事件的理解吧。

           jquery是目前非常流行的js框架之一,在很多项目中都会用到jquery框架,jquery框架提供了很多事件,如click.dbclick,blur,change等,直接给jquery对象绑定这些事件时是在页面加载时绑定的,如果是动态添加的jquery对象,则不能直接绑定事件,需要使用live绑定事件

$('.clickme').live('click', function() {
  alert("Live handler called.");
});
然后再添加一个新元素:

$('body').append('<div class="clickme">Another target</div>');
然后再点击新增的元素,他依然能够触发事件处理函数。

.live() 方法能对一个还没有添加进DOM的元素有效,是由于使用了事件委托:绑定在祖先元素上的事件处理函数可以对在后代上触发的事件作出回应。传递给 .live() 的事件处理函数不会绑定在元素上,而是把他作为一个特殊的事件处理函数,绑定在 DOM 树的根节点上。

因为live的性能低,在jquery1.7之后添加了on方法来代替live方法
$("body").on("click",".clickme",function(){
      alert("Live handler called.");
})

而jquery1.9之后则完全删除live方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值