什么是事件委托

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

原理:

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

作用:

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

事件源 :

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

使用情景:

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

示例:

<body><ul><li class="luffy">路飞</li><li>路飞</li><li>路飞</li></ul>
</body>
<script src="jquery-3.2.1.js"></script>
<script type="text/javascript">
$(document).ready(function(){//通过on()方法$('ul').on('click','#namei,.luffy',function(){console.log(this);})//未来追加的元素 $('ul').append('<a id="namei">娜美</a>')}
</script>

语法:

on(type,selector,data,fn);

描述:在选定的元素上绑定一个或多个事件处理函数

参数解释
events( String) : 一个或多个空格分隔的事件类型
selector( String) : 一个选择器字符串,用于过滤出被选中的元素中能触发事件的后代元素
data: 当一个事件被触发时,要传递给事件处理函数的event.data
fn:回调函数

转载于:https://www.cnblogs.com/liuye1990/p/9551022.html

12-事件委托(事件代理)相关推荐

  1. JQuery 之 事件委托(事件代理)

    事件委托/事件代理: 事件委托就是利用冒泡的原理,把事件加到父级上,通过判断事件来源的子集,执行相应的操​ 事件委托的写法: $(选择器).delegate( 事件真实发生在谁身上, 事件属性,匿名函 ...

  2. js事件委托(事件代理)的原理以及优缺点

    js事件委托/事件代理的原理以及优缺点 什么是事件委托:通俗的讲,事件就是onclick,onmouseover,onmouseout,等就是事件,委托呢,就是让别人来做,这个事件本来是加在某些元素上 ...

  3. JS中的事件委托/事件代理详解

    起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...

  4. 事件传播机制/事件委托/事件代理

    事件传播机制分为三个阶段: 第一阶段:从window对象传导到目标节点,称为"捕获阶段" 第二阶段:在目标节点上触发,称为"目标阶段" 第三阶段:从目标节点传导 ...

  5. 事件委托(代理/委派)

    事件委托也叫事件代理,jQuery中叫事件委派 事件委托就是不给每个子元素设置事件侦听器,而是给其父元素设置事件侦听器,然后利用冒泡阶段的原理影响每个子节点 给ul绑定注册事件,点击 li 标签后会冒 ...

  6. js事件委托(事件代理)

    起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...

  7. 详解js中EventListener监听器(事件委托/事件代理)

    监听器: 语法: addEventListener(event,function,userCapture) 方法 第一个参数写事件句柄,不需要加"on",直接写时间名就可以(如:c ...

  8. JS 事件代理和事件委托

    目录 事件委托的概念理解 为什么要用事件委托 事件委托的原理: 事件代理(委托)实现 总结: 事件委托的概念理解 为什么叫事件委托?它还有一个名字叫事件代理. JavaScript高级程序设计上讲:事 ...

  9. Mr.J-- jQuery学习笔记(十一)--事件委托

    jQuery事件委托 事件委托是利用事件冒泡,只指定一个事件处理程序来管理某一类型的所有事件. 为什么要用事件委托? 1.在JavaScript中添加到页面上的事件处理程序的个数直接关系到页面的整体运 ...

  10. 事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流

    一.事件冒泡定义 事件冒泡是指在一个对象触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那 ...

最新文章

  1. linux实现时间服务器视频,linux实现时间同步有哪几种方法
  2. python中的列表生成式_生成器中的列表推导式
  3. linux系统迁移的重要配置文件,mylinuxbackup
  4. how to find the original page containing a given image
  5. 使用Maven配置JBoss / Wildfly数据源
  6. php静态方法怎么调用非静态属性,关于静态方法不能调用类中的非静态属性的理解...
  7. 3说明书_怎么才能做好产品说明书翻译?知行翻译公司总结了3点
  8. java.util.Random 类的 nextInt(int num )
  9. 实验2-2-4 计算分段函数[2] (10 分)
  10. 解决asp.net中使用FckEditor上传文件,中文名称乱码的问题
  11. CM311-1a linux游戏服务器操作立马拥有我的世界私人服务器哦
  12. 最受程序员 欢迎的14个社区
  13. 硅谷华人码农成语大全
  14. [Noi online-j]T1 切蛋糕
  15. Apache 架构师的 30 条设计原则
  16. 码云gitee 部署公钥匙
  17. 一个嵌入式牛人学习经历
  18. ufl计算机科学排名,美国计算机专业如何选校
  19. [Js/Jquery]天气接口简单使用
  20. NIR近红外光谱简介

热门文章

  1. web前端【第十一篇】jQuery属性相关操作
  2. 看libevent所遇到的英语生词
  3. Centos6.4 本地yum源配置
  4. How to adjust OOM score for a process?
  5. 一个经典实例理解继承与多态原理与优点(附源码)---面向对象继承和多态性理解得不够深刻的同学请进...
  6. GridView详解
  7. 做嵌入式的必须学Android吗
  8. (转)dp动态规划分类详解
  9. 华为完成拉美铜网宽带G.fast技术部署测试
  10. mybatis处理集合、循环、数组和in等语句的使用