Javascript高级程序设计第二版第十二章--Event--笔记
来源:互联网 发布:软件用什么服务器 编辑:程序博客网 时间:2024/06/05 21:55
今天给诸位分享一下 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 在冒泡阶段。
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 );
}
}
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变化引起的事件
1. UI事件,
2. 7个鼠标事件(click,dblclick,mousedown,mouseover,mousemove,mouseup,mouseout,)
3. 3个键盘事件( keypress,keydown,keyup)
4. html事件(load,resize,scroll,unload)
5 因dom变化引起的事件
- Javascript高级程序设计第二版第十二章--Event--笔记
- Javascript高级程序设计第十二章
- Javascript高级程序设计第二版第五章--引用类型--笔记
- Javascript高级程序设计第二版第七章匿名函数--笔记
- Javascript高级程序设计第二版第八章--BOM--笔记
- Javascript高级程序设计第二版第十章--DOM--笔记
- Javascript高级程序设计第二版第十一章--DOM2,DOM3--笔记
- Javascript高级程序设计第二版第十三章--表单脚本--笔记
- Javascript高级程序设计第二版第十四章--异常--笔记
- Javascript高级程序设计第二版第十五章-->第二二章--笔记
- 《JavaScript高级程序设计》学习笔记(第二章)
- Javascript高级程序设计第二版第四章--变量,作用域及内存问题--笔记
- Javascript高级程序设计第二版第六章--面向对象程序设计(Object-Oriented Programming)简称OOP编程--笔记
- JavaScript高级程序设计(第3版)第二章读书笔记
- 《JavaScript高级程序设计 第二版》理解对象
- 《 JavaScript高级程序设计》第二章ECMAScript基础
- javascript高级程序设计读书笔记-第二章
- JavaScript高级程序设计学习笔记——第二章在HTML中使用JavaScript
- Java多线程学习
- centos 安装中文语言包
- Linux关闭终端屏保
- 使用JRockit JVM剖析当前进程
- vsftpd简易配置
- Javascript高级程序设计第二版第十二章--Event--笔记
- (转)MDB链接SQLSERVER导致写入冲突,头疼的问题,原来错在这里!!
- Flex 4.0 在Flex Builder里调试程序的方法
- Mathematica入门教程
- RE:DBA三十问
- SQL Server 发生错误:1807
- 杂谈
- Codeforces Round #157 小结
- NYOJ-366:D的小L