yjxf8285@qq.com

直接事件和委托事件

爱前端 JavaScript 直接事件和委托事件

JavaScript

直接事件和委托事件

Posted By 刘晓帆 | 1,142 views

转载请注明来自:爱前端

有人问过我一个问题,如下

$('ul li').on('click', function () {
   //todo 
});
$('ul').on('click','li', function () {
    //todo 
});

上面这2段代码的区别是什么?

其实jquery的官网文档中有详细的解释,第1段的意思是把事件直接绑定在li上面,如果有1000个li,那么就相当于绑定了1000次li。而且只能绑定到文档中已经存在的Li上面,后续添加的li是绑定不上的,比如通过ajax添加进去的新的li。 这就是直接事件绑定。
第2段是委托事件,也叫代理事件,只绑定了一次事件到li上面,也可以监听到后续添加的li。

Comments are closed.