jQuery on 替换live

最近刚发现在1.9版本中live已被删除,live是一个很好用的事件绑定方法:

live() 方法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。

通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。
当然现在有个更好的实现方式可以实现同样的功能:on

以前的做法:

$("div").live('click',function(){
	// click
});

为div添加事件后,如果添加新的div会自动绑定该点击事件

现在如果需要实现相同的功能需要这么做:

$(document).on('click','div',function(){
	//click
})

注意,第二个参数很重要,起到过滤条件的作用,只有当document为div时,才会绑定该事件,这样就达到live的效果了。

发表评论