JS中的事件分类
来源:互联网 发布:java无法访问的语句 编辑:程序博客网 时间:2024/05/21 17:10
JS中的事件分类
* 1、鼠标事件
* click/dblclick/onmouseover/onmouseout
*
* 2、 HTML事件
* onload/onscroll/onsubmit/onchange/onfocus
*
* 3、 键盘事件
* keydown: 键盘按下时触发
* keypress:键盘按下并松开的瞬间触发
* keyup: 键盘抬起时触发
*
* [注意事项]
* ① 执行顺序: keydown->keypress->keyup
* ② 当长按时,会循环执行keydown->keypress
* ③ 有keydown并不一定有keyup,当事件触发过程中,鼠标将光标移走,将导致没有keyup
* ④ keypress只能捕获键盘上的数字、字符、符号键,不能捕获各种功能键,而keydown和keyup可以。
* ⑤ keypress支持区分大小写,keydown和keyup并不支持。
*
* [确定触发的按键]
* ① 在触发的函数中,传入一个参数e,表示键盘事件;
* ② 使用e.keyCode,取到按键的Ascii码值,进而确定触发按键;
* ③ 所有浏览器的兼容写法(一般并不需要):
* var evn = e || event;
* var code = evn.keyCode || evn.which || evn.charCode;
【JS中的DOM0事件模型】
* 1、 内联模型(行内绑定):直接将函数名作为HTML标签的某个事件属性的属性值;
* eg:DOM0内联模型
* 优点:使用方便。
* 缺点: 违反了W3C关于HTML与JavaScript分离的基本原则;
*
* 2、 脚本模型(动态绑定):在JS脚本中,取到某个节点,并添加事件属性;
* eg: window.onload = function(){}
* 优点: 实现了HTML与JavaScript的分离。
* 缺点: 同一个节点,只能绑定一个同类型事件。 如果绑定多次,最后一个生效。
*
DOM2事件模型 * 1、添加事件绑定方式: * ① IE8之前: btn2.attachEvent("onclick",函数); * ② 其他浏览器: btn2.addEventListener("click",函数,true/false); * 参数三: false(默认) 表示事件冒泡 true 表示事件捕获 * * ③ 兼容写法: if(btn2.attachEvent){ * btn2.attachEvent(); * }else{ * btn2.addEventListener(); * } * * 2、 优点 ① 可以给同一节点,添加多个同类型事件; * ② 提供了可以取消事件绑定的函数。 * * 3、 取消DOM2事件绑定: * 注意:如果要取消DOM2的事件绑定,那么在绑定事件时,处理函数必须要使用有名函数,而不能使用匿名函数。 * btn2.removeEventListener("click",func2); * btn2.detachEvent("onclick",func2);
- JS中的事件分类
- js事件分类
- js事件分类
- js事件:分类和介绍
- JS中的事件冒泡
- js中的事件触发
- js中的键盘事件
- js中的eventType事件
- 演示js中的事件
- js中的事件流
- js中的事件委托
- js中的事件委托
- JS中的事件代理
- Js中的事件
- js中的事件委托
- js中的事件
- js中的事件机制
- JS 中的事件设计
- 表达式计算--递归
- event.cancelBubble与event.stopPropagation()
- fragments
- 节点获取与增删
- Spring IOC
- JS中的事件分类
- Linux命令总结
- T
- 设计模式—观察者模式
- 2018届互联网校招高薪清单流出,你怎么看?
- 洛谷P1197 [JSOI2008]星球大战
- JavaScript之模块化编程
- MongoDB的学习笔记(四)--MongoDB中的GridFS
- Java设计模式七大原则或者说七大原则