码迷,mamicode.com
首页 > 其他好文 > 详细

小总结2

时间:2016-04-20 00:19:55      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:

JS事件模型:

事件流:
一个事件可以用于很多元素 每个元素必须以指定的顺序响应事件

事件冒泡:
事件从事件发生的目标最内部开始出发 想法触发到最外面 IE低版本和标准浏览器的冒泡不一样

事件补货:
她和冒泡的是相反的 它的触发顺序是从最外层的对象到最里层的对象

DOM事件流:
它是同时支持事件补货和事件冒泡的,但是事件捕获先发生 DOM事件模型有一个特点是文本节点
也可以触发事件(IE中不行)

事件处理程序/监听器:
事件是被用户或浏览器执行的某种行为(事件被命名为click/load/mouseover等等)
为响应一个事件而被调用的函数称为事件处理程序(DOM中叫做事件监听器)

传统事件处理程序指派方法:
这种方法可以为一个事件指派一个事件处理程序 他被所有的现代浏览器所支持

现代事件处理程序指派方法:
这种方法可以为一个事件指派多个事件处理程序 只被现代的浏览器支持 存在浏览器不兼容问题

DOM:
使用addEventListener()和removeEventListener()方法完成事件处理程序指派和删除的任务
有三个参数 1.事件的名称
2.要指派的函数
3.是否处理程序要用在冒泡或捕获阶段(用在捕获阶段用true/冒泡用false)
解决兼容性问题:
if(document.addEventListener){ //DOM
}else if(document.attachEvent){ //IE
}
事件处理程序的返回值:
他的返回值可以影响事件的默认行为 就是事件发生时不需要处理就会正常发生的行为

Event对象:
event对象值在事件被触发时创建 并且可以被事件处理程序访问 所有事件执行完成后销毁 IE和DOM不兼容
这个对象包含了事件发生时的特定信息
1.触发事件的对象
2.事件发生时的鼠标信息和键盘信息

属性和方法:
IE和DOM的属性方法有差别:

IE:
1.srcElement 导致事件发生的元素
2.ScreenX 鼠标指针相对于整个计算机屏幕的X坐标
3.KeyCode 对于keypress事件,指示按下的键的Unicode字符/对于keydown/keyup事件,指示按下的键盘是数字表示器
4.cancelBubble 设置为true时取消冒泡
5.returnValue 值为false时取消事件默认行为
DOM:
1.target 触发事件元素/对象
2.screenX 鼠标指针相对于整个计算机屏幕的X坐标
3.KeyCode 指示按下的键盘是数字表示器
4.StopPropagation() 调用可阻止事件的冒泡
5.preventDefault()阻止事件默认行为

事件类型:
根据触发事件的对象以及事件触发的行为

鼠标事件:
click/dblclick(双击左键时)/mousedown(按下任意鼠标键)/mouseout(移出)
mouseover(移动,和mouseout搭配使用)/mouseup(释放,和mousedown搭配使用)
mousemove(重复发生)
事件发生顺序:mousedown > mouseup > click > mousedown > mouseup > click > dblclick

键盘事件:
使用键盘时发生的事件:
keydown:按下一个键发生的事件 按住不放就重复发生
keypress:按住不包括shift和alt的一个字符键发生的事件 按住不放重复发生
kayup:松开一个键的时候发生
顺序:
按下字符键时:
Keydown > keypress > keyup
按下非字符键(shift 等)时:
Keydown > keyup


小总结2

标签:

原文地址:http://www.cnblogs.com/ROUJIAMOYU/p/5410740.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!