事件总结

事件

1、鼠标事件
(1)redDiv . onclick = fubction( ){ }; 点击事件
(2)redDiv . onmouseover = function( ){ }; 从父级移入子级的时候触发
(3)redDiv . onmouseout = function( ){ }; 从父级移出子级的时候触发
(4)redDiv . onmouseenter = function( ){ }; 移入父级和子级整体的时候触发
(5)redDiv . onmouseleave = function( ){ }; 移出父级盒子级整体的时候触发
(6)redDiv . onmousedown = function( ){ }; 鼠标按下
(7)redDiv . onmouseup = function( ){ }; 鼠标抬起
(8)redDiv . ondbclick = function( ){ }; 鼠标双击
(9)redDiv . oncontextmenu = function( ){…return false;} 鼠标右键,阻止默认事件
(10)redDiv . onmousemove = function( ){ };鼠标移动
2、键盘事件:
只有成为焦点的元素才能触发键盘事件
(1)document . onkeydown = function( ){ }; 键盘按下 支持特殊按键,command shift 但不区分大小写,A和a的keyCode都是65
(2)document . onkeyup = function( ){ }; 键盘抬起
(3)document . onkeypress = function( ){ } 键盘按下 不支持特殊按键,但keyCode区分大小写
target 点哪个就是哪个,是触发事件的元素,触发事件的元素不一定是绑定事件的元素

3、表单事件
(1)name . onchange = function( ){ }; 内容发生了变化
(2)name . onblur = function( ){ }; 失去焦点
(3)name . onfocus = function( ){ }; 获取焦点
(4)name . oninput = function( ){ } ; 输入了内容
(5)form . onsubmit = function( ){ return false;}; 用户提交了表单
(6)form . onreset = function( ){ }; 表单重置
4、移动端事件
(1)redDiv . ontouchstart = function( ){ }; 点击事件,相当于onmousedown
(2)ontouchend
(3)touchmove
(4)
5、window事件
(1)window.onload = function( ){ } 在窗口加载完毕之后才会执行
不要在window.onload里面使用document.write。因为窗口加载完毕之后会关闭文档流,如果使用document.write会开启新的文档流覆盖原有的所有内容。
(2)window.onresize = function( ){ }窗口大小发生变化的hi后就会触发这个事件
(3)window.onunload = function( ){ }关闭窗口时触发的事件
6、滚轮事件
(1)mousewheel

事件对象

1、键盘事件对象
(1)keyCode 获取对应触发事件的键盘,其对应按键打印出来为一个数值
keydown :可以获取特殊键,但key Code不区分大小写
keypress:keyCode可以区分大小写,但不能获取特殊键
获取键盘事件:非火狐可以通过window.event获取,火狐通过传参获取,兼容写法如下:
documrnt . onkeydown = function( ev ){
var evObj = window.event || ev;
console.log(evObj . keyCode);
}
(2) metaKey:metaKey 事件属性可返回一个布尔值,指示当事件发生时,"meta" 键是否被按下并保持住。
(3)altKey:altKey 事件属性可返回一个布尔值,指示当事件发生时,"alt" 键是否被按下并保持住。
2、事件对象的作用
(1)可以获得和哪个按键结合:
(2)获得点击所在的位置
clientX和clientY,针对于浏览器视窗而言
offsetX和offsetY,相对于自身而言
screenX和screenY,相对于显示屏而言
(3)获得点击所对应的标签 ev.target
3、移动短事件对象
touches/targetTouches/changedTouched

默认事件:

return false;、evObj.returnValue = false;、evObj.preventDefault();
捕获:从父级接收到消息,传递给子集的过程
冒泡:事件处理的默认顺序(从子集->父级)true(从父级->子集)
取消冒泡:evObj.cancelBubble=true;

事件绑定、解除:

非IE
addEventListener(type,fn,false)//type 事件 不带on
removeEventListener(type,fn,false)//
IE
attachEvent("onclick",f1);
detachEvent("onclick",f1);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放...
    孤魂草阅读 4,410评论 0 0
  • 什么是事件: 事件是交互体验的核心功能 一.事件冒泡: 当一个事件发生时,这个事件会从内向外逐层传递。 二.为什么...
    轻描淡写mua阅读 3,459评论 0 0
  • 1、鼠标事件 onclick 鼠标点击事件,当鼠标左键点击时候会触发。 ondbclick 当鼠标双击时候会触发...
    Albert_w3阅读 5,480评论 0 0
  • 什么是事件? JavaScript与HTML之间的交互是通过事件实现的。事件,就是文档或浏览器窗口中发生的一些特定...
    LeeoZz阅读 1,358评论 0 0
  • 深入思考 在参加棒棒团益分享之前,心里也会有一种意识告诉我每天要反思,要规划和总结自己每天哪些事情没有做好,...
    舞者dancer阅读 4,580评论 0 0