Javascript高级程序设计第二版第十二章--Event--笔记

简介:

今天给诸位分享一下 chapter 12 Events

 所谓事件就是页面与文档窗口发生交互的瞬间。当年事件发生时它可以被预定(程序处理)。

 事件有两个过程,冒泡过程,或捕获过程。

 冒泡是自上而下,捕获是自下而上。
这个顺序是document -> html -> body -> onclick element

 

 比如单击一下一个div,但浏览器不认为你只单击一个dom元素,而是div,body,html,document等这些元素。

 dom一般会处理捕获或冒泡时的事件,但ie只处理冒泡时,
ie的event 处理 attachEvent(type,fn);
dom addEventListener(type,fn, true|false); 

dom addEventListener(type,fn,  true | false );
type:事件类型,
fn:事件处理函数
true  在捕获阶段,  false  在冒泡阶段。

 司徒的通用addEvent:

复制代码
addEvent: function (el, type, fn ) {
  
if ( !+ " \v1 " ) {
      el[
' e ' + type + fn] = fn;
      el.attachEvent( 
' on ' + type,  function () {
          el[
' e ' + type + fn]();
      } );
  }
else {
      el.addEventListener( type, fn, 
false  );
  }
}
复制代码

这与平常的element.onclick这种有什么区别呢?

如果给element上添加两个onclick只会执行一个。但attachEvent添加两个,会从后往执行。

 对应的删除事件:detchEvent() removeEventListener()

复制代码
一般事件分五类:
1 . UI事件,
2 . 7个鼠标事件(click,dblclick,mousedown,mouseover,mousemove,mouseup,mouseout,)
3 . 3个键盘事件( keypress,keydown,keyup)
4 . html事件(load,resize,scroll,unload)
5  因dom变化引起的事件
复制代码

今天大概就这么多。细节,还要在仔细斟酌。



本文转自豪情博客园博客,原文链接:http://www.cnblogs.com/jikey/archive/2010/08/25/1807829.html,如需转载请自行联系原作者


目录
相关文章
|
1月前
|
JavaScript 前端开发
JavaScript随手笔记 --- 对数据进行判断最大位数是否超过八位
JavaScript随手笔记 --- 对数据进行判断最大位数是否超过八位
|
1月前
|
JavaScript 前端开发
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
JavaScript随手笔记 --- 用正则表达式匹配字符串是否为运算公式
|
23天前
|
JavaScript 前端开发 Java
JavaScript高级笔记-coderwhy版本(六)
JavaScript高级笔记-coderwhy版本
71 0
|
23天前
|
JavaScript 前端开发 Java
JavaScript高级笔记-coderwhy版本(一)
JavaScript高级笔记-coderwhy版本
33 0
JavaScript高级笔记-coderwhy版本(一)
|
27天前
|
JavaScript 前端开发
js开发:请解释什么是事件委托(event delegation),并给出一个示例。
事件委托是JavaScript中优化事件处理的技术,通过绑定事件处理器到共享的父元素,利用事件冒泡机制来处理子元素的事件。这种方法能提升性能、简化代码并降低内存消耗。示例展示了如何在父元素上监听`click`事件,然后通过`event.target`识别触发事件的具体子元素(如`<li>`),实现对动态生成列表项的点击事件处理。
|
29天前
|
JSON JavaScript 前端开发
Node.JS第二讲笔记
Node.JS第二讲笔记
30 0
|
1月前
|
JavaScript 前端开发 索引
JavaScript随手笔记---对比数组差异
JavaScript随手笔记---对比数组差异
JavaScript随手笔记---对比数组差异
|
1月前
|
JavaScript 前端开发
JavaScript随手笔记---轮播图(点击切换)
JavaScript随手笔记---轮播图(点击切换)
JavaScript随手笔记---轮播图(点击切换)
|
1月前
|
JSON JavaScript 前端开发
JavaScript随手笔记---数组中相同的元素进行分组(数据聚合) groupBy函数
JavaScript随手笔记---数组中相同的元素进行分组(数据聚合) groupBy函数
|
1月前
|
JavaScript 前端开发
JavaScript随手笔记---保留小数位
JavaScript随手笔记---保留小数位