lassAtitit事件代理机制原理 基于css class的事件代理的事件代理titi
Atitit事件代理机制原理 基于css class的事件代理
1.1. 在javasript中delegate这个词经常出现,看字面的意思,代理、委托1
1.2. 事件代理1
1.3. 代理标准化规范1
1.3.1. jQuery和Dojo中delegate函数2
1.3.2. 优点2
1.1. 在javasript中delegate这个词经常出现,看字面的意思,代理、委托
如果我们不想或不能够直接操纵目标对象,我们可以利用delegate创建一个代理对象来调用目标对象的方法,从而达到操纵目标对象的目的。代理对象要拥有目标对象的引用。这就是事件代理(也就是说不会直接去操纵对象)
注册事件::绑定 cls:cls_left >>fun
执行事件,遍历obj class name,for exe cls fun..
1.2. 事件代理
首先介绍一下JavaScript的事件代理。事件代理在JS世界中一个非常有用也很有趣的功能。当我们需要对很多元素添加事件的时候,可以通过将事件添加到它们的父节点而将事件委托给父节点来触发处理函数。这主要得益于浏览器的事件冒泡机制
1.3. 代理标准化规范
// 获取父节点,并为它添加一个click事件
document.getElementById("parent-list").addEventListener("click",function(e) {
// 检查事件源e.targe是否为Li
if(e.target && e.target.nodeName.toUpperCase == "LI") {
// 真正的处理过程在这里
console.log("List item ",e.target.id.replace("post-")," was clicked!");
}
});
1.3.1. jQuery和Dojo中delegate函数
下面看一下Dojo和jQuery中提供的事件代理接口的使用方法。
首先是jQuery:
$("#link-list").delegate("a", "click", function(){
// "$(this)" is the node that was clicked
console.log("you clicked a link!",$(this));
});
jQuery的delegate的方法需要三个参数,一个选择器,一个时间名称,和事件处理函数。
1.3.2. 优点
通过上面的介绍,大家应该能够体会到使用事件委托对于web应用程序带来的几个优点:
1.管理的函数变少了。不需要为每个元素都添加监听函数。对于同一个父节点下面类似的子元素,可以通过委托给父元素的监听函数来处理事件。
2.可以方便地动态添加和修改元素,不需要因为元素的改动而修改事件绑定。
3.JavaScript和DOM节点之间的关联变少了,这样也就减少了因循环引用而带来的内存泄漏发生的概率。
JavaScript事件代理和委托(Delegation) - majian_1987的专栏 - 博客频道 - CSDN.NET.html
作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher
捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak
简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon Al Rapanui
埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 阿尔 拉帕努伊
常用名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源:attilax的专栏 http://blog.csdn.net/attilax
--Atiend
lassAtitit事件代理机制原理 基于css class的事件代理的事件代理titi相关推荐
- 安卓自定义View进阶-事件分发机制原理【转自 app架构师 微信公众号】
注意:本文中所有源码分析部分均基于 API23(Android 6.0) 版本,由于安卓系统源码改变很多,可能与之前版本有所不同,但基本流程都是一致的. 为什么要有事件分发机制? 安卓上面的View是 ...
- 安卓自定义View进阶-事件分发机制原理
之前讲解了很多与View绘图相关的知识,你可以在 安卓自定义View教程目录 中查看到这些文章,如果你理解了这些文章,那么至少2D绘图部分不是难题了,大部分的需求都能满足,但是关于View还有很多知识 ...
- 浏览器事件代理机制原理?
关于浏览器事件代理 弄明白浏览器事件代理事前,先了解下事件.事件流. 一,事件 HTML DOM 允许 JavaScript 对 HTML 事件作出反应.即操作对应HTML元素时,会触发相应事件(包含 ...
- Spring IoC 源码系列(三)Spring 事件发布机制原理分析
在 IoC 容器启动流程中有一个 finishRefresh 方法,具体实现如下: protected void finishRefresh() {clearResourceCaches();init ...
- Ajax:ajax跨域解决方案代理机制原理及实现
目录: (1)ajax跨域解决方案之代理机制实现原理 (2)ajax跨域解决方案之代理机制的代码实现 (1)ajax跨域解决方案之代理机制实现原理 让ajax请求访问servlet,可以让ajax请求 ...
- 事件分发机制原理及其分析
先给大家讲讲什么是事件分发? 大家知道Android中的视图是由一个个View嵌套构成的层级视图,即一个View里包含有子View,而这个子View里面又可以再添加View.当用户触摸屏幕产生一系列事 ...
- Android系统分析之带着问题看事件分发机制
Android 触摸事件分发机制? Android系统分析之带着问题看事件分发机制 一 事件分发机制 1 什么是事件分发机制? 1.1 什么是事件? 答:当用户触摸屏幕时,每一次的点击,按下,移动,抬 ...
- View的事件体系之三 android事件分发机制详解(下)
接着上一篇来分析事件分发机制,在看了各位大牛的关于事件分发机制的分析后茅塞顿开,之前看过好几遍郭霖,弘扬以及玉刚大神关于事件体系的讲解,一直看不懂,比较模糊,最近复习时,看到一篇博文,写的相当精彩,看 ...
- JS 常见面试题 - 事件循环机制
一.浏览器JS异步执行的原理 一般常说js是一门单线程语言,那为什么可以异步执行且不发生阻塞呢? 常说的JS是单线程语言,是因为执行JS的引擎是单线程的,而浏览器本身是多线程的 浏览器主要含有: js ...
- 安卓自定义View进阶-事件分发机制详解
原文地址:http://www.gcssloop.com/customview/dispatch-touchevent-source Android 事件分发机制详解,在上一篇文章 事件分发机制原理 ...
最新文章
- 深度学习工作开展_深入开展深度工作:新经济中的两项核心能力
- 《Java技术》第八次作业
- 剑指企业级云原生,阿里云 CNFS 如何破局容器持久化存储困境
- 交通仿真软件测试自学,[2018年最新整理]各类交通仿真软件综合介绍.docx
- java集合类(简介)
- 转:验证curl_init() 返回 false时..
- 接口传值实例DatePickerDialog
- 【转】基于Ubuntu 14.04 LTS编译Android4.4.2源代码
- 杭电计算机2011年硕士研究生笔试详解
- C++学生信息管理系统5.0
- Atitit 可读性的艺术 目录 1. 原则类	1 2. 方法类	2 2.1. 1.8. 选择选择表格化	3	2 2.2. 体现了“声明式编程”的风格,即只要说明意图,而不需要写出处理细节。	2 2
- 乐优商城项目实战系列笔记1-项目搭建
- 2007年个人站长/SEOer必上网站
- 那些让人“口吐芬芳”的APP登录骚操作?!!
- PLC常用标志位信号时序编程注意事项
- linux v4l2架构分析之v4l2_ctrl_handler初始化及添加v4l2_ctrl的过程分析
- PDF、Word、Excel文件前端预览实操干货都在这!
- notepad++下载安装步骤
- php小偷cookie,ptcms小说小偷程序 最新EXP漏洞
- hihoCoder:#1082 然而沼跃鱼早就看穿了一切