您的位置:首页 > Web前端 > JQuery

jquery 中 事件绑定函数 bind() ,live(),delegate()以及on() 的区别

2016-10-26 22:00 831 查看
jquery中事件绑定的方法有好几种,下面是我对这些方法的理解

1.bind(),我们最常使用的方法之一,它会给每个匹配的元素绑定 事件以及添加时间处理函数

<div>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>


$(” div>ul li”).bind(“click”,function(){

alert(” this is a test”);

})

bind 给ul 中的每一li元素绑定点击事件和时间处理程序

2.live() 利用时间委托机制,它会将事件绑定到匹配元素的根元素(document)上

live()会强制默认根元素为document

3.delegate() 与live() 类似 它会将事件绑定到指定的根元素上 并不会强制限定根元素

div id="root">
<a>Alice</a>
<a>Bob</a>
</div>
<script>
$('#root').delegate('a', 'click', function(){
console.log('clicked');
});
</script>


4 on() on方法是以上三种方式的总和`

//bind

( “#foo” ).bind( “click”, function( e ) {} );( “#foo” ).on( “click”, function( e ) {} );

// delegate

( “#root” ).delegate( “a”, “click”, function( e ) {} );( “#root” ).on( “click”, “a”, function( e ) {} );

“`

`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery 函数 delegate