参考:http://www.ituring.com.cn/article/467

概念:

  什么是事件委托:通俗的讲,事件就是onclick,onmouseover,onmouseout,等就是事件,委托呢,就是让别人来做,这个事件本来是加在某些元素上的,然而你却加到别人身上来做,完成这个事件。
  举个列子:有三个同事预计会在周一收到快递。为签收快递,有两种办法:一是三个人在公司门口等快递;二是委托给前台MM代为签收。现实当中,我们大都采用委托的方案(公司也不会容忍那么多员工站在门口就为了等快递)。前台MM收到快递后,她会判断收件人是谁,然后按照收件人的要求签收,甚至代为付款。这种方案还有一个优势,那就是即使公司里来了新员工(不管多少),前台MM也会在收到寄给新员工的快递后核实并代为签收。

原理:

  利用冒泡的原理,把事件加到父级上,触发执行效果。

作用:

1.性能要好
2.针对新创建的元素,直接可以拥有事件

事件源 :

  跟this作用一样(他不用看指向问题,谁操作的就是谁),event对象下的

使用情景:

  •为DOM中的很多元素绑定相同事件;
  •为DOM中尚不存在的元素绑定事件;

JS的事件委托

Jquery的事件委托

$(function(){
$('#ul1,#ul2').delegate('li','click',function(){
if(!$(this).attr('s')) {
$(this).css('background','red');
$(this).attr('s',true);
}else {
$(this).css('background','#fff');
$(this).removeAttr('s');
}
})
});

最新on()方法取替了delegate()方法

$(function(){
$('#ul1,#ul2').on('click','li',function(){
if(!$(this).attr('s')) {
$(this).css('background','red');
$(this).attr('s',true);
}else {
$(this).css('background','#fff');
$(this).removeAttr('s');
}
})
});

最新文章

  1. 【OPENGL】第三篇 着色器基础(二)
  2. 用Qt Creator 对 leveldb 进行简单的读写
  3. bookstrap必备的基础知识
  4. MyEclipse 关闭鼠标悬停提示
  5. 未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序
  6. HDU5807分段dp
  7. 30个实用的Linux find命令
  8. 转载 ASP.NET MVC中使用ASP.NET Identity
  9. SQL索引问题
  10. Codeblocks + opencv + Cmake + minGW 环境搭建(一劳永逸版)
  11. C++ Primer 学习笔记_2_高速入口(继续)
  12. CodeForces 606B Testing Robots
  13. nginx负载均衡(一)
  14. getRequestDispatcher()和response.sendRedirect()
  15. 新手解决jsp页面<%@报错的方法
  16. SQL to Java code for Elasticsearch
  17. 看懂 ,学会 .NET 事件的正确姿势-简单版
  18. (后端)Java中关于金额大小写的工具类
  19. 洛谷 P2059 [JLOI2013]卡牌游戏 解题报告
  20. PAT甲级 1128. N Queens Puzzle (20)

热门文章

  1. solaris 软件包地址
  2. OPTIMIZE TABLE ipc_analysisdatasyn, ipc_analysisdatatkv,ipc_autoupdateset, ipc_equipmentwaring,ipc_fguid, ipc_receivedata, ipc_senddata, tb_qualitativeanalysis, tb_quantifyresult, tb_quantifyresulthis
  3. Unity3D实践系列06,球体撞击物体游戏
  4. C#编程(五十二)----------有序列表
  5. 分布式系统:CAP
  6. SharePoint Online 设置网站集
  7. mac下设置eclipse自动提示
  8. PHPthinking赠书了!
  9. Android动画学习笔记大集合
  10. Notification详解(含工具类)