jQuery源码阅读(八):事件-基础

Author : lovecicy

JavaScript是一种事件驱动型的语言,事件是JavaScript的基础,jQuery的事件无疑也是jQuery的核心之一。jQuery是强大的,jQuery源码是复杂的。一直觉得看jQuery源码是要勇气的,而要看事件处理的源码,更是需要勇气,都已经解读到这里了,就让我们硬着头皮上吧。jQuery中关于事件的代码有多少呢?从2650行一直到3669行,整整1000多行的代码,慢慢来吧。 这一篇,将不会涉及到太多源码的东西,更多的是对jQuery事件的一些基础介绍。关于事件,我之前写过一篇JavaScript事件的文章,里面简单介绍了JavaScript的事件基础知识,有兴趣的可以先看看这篇文章。而关于jQuery的事件处理方法的总结,也有之前的一篇文章——jQuery事件处理方法小记。 关于事件基础,看完上面两篇,其实应该对事件的使用没什么问题了,但是这样以来,这篇文章的篇幅就……所以,让我们再来看看另一个话题吧:jQuery是如何处理事件的。 我最熟悉的看代码方式就是,从我们平时用的接口入手,一步步剖析代码,这次也不例外,由于所有的事件绑定最终都是通过.on()和.off()两[Read More]

standard

JavaScript事件笔记

Author : lovecicy

事件流 事件冒泡 事件捕获 DOM事件流 事件处理 HTML事件处理 DOM 0级事件处理 DOM 2级事件处理 IE事件处理 事件对象 DOM事件对象 IE事件对象 一、事件流 事件流描述的是从页面中接收事件的顺序 1. 事件冒泡 IE的事件叫做事件冒泡,事件从最具体的元素开始,逐级向上传播。 当你点击页面中的div时,click事件会按下列顺序传播: 1. div 2. body 3. html 4. document 2. 事件捕获 网景团队提出的另一种事件流叫事件捕获,事件流的方向恰好与事件冒泡相反,同样的,当你点击上面的div时,事件捕获的顺序是: 1. document 2. html 3. body 4. div 3. DOM事件流 DOM 2级事件规定事件流包括3个阶段:事件捕获,处于目标和事件冒泡。在事件处理中,处于目标阶段被看做事件冒泡的一部分。 IE9、Opera、Firefox、Chrome和Safari都支持DOM事件流;IE8及更早版本不支持DOM事件流,即不支持事件捕获。 二、事件处理 响应事件的函数叫做事件处理函数或事件监听器。这一部分,我们来了解下事件[Read More]

standard