JavaScript事件使用方法大全(2019)

一、前言

        基于事件的异步回调机制是JS这门语言的一大特色,只有打牢基础,我们才能写出优秀的框架,一下为自己整理的较为详细的事件说明,此文会不定期更新。目前还差媒体相关的事件未做总结,后续验证事件的使用方式后,再更新!

二、正文

鼠标事件

事件

描述

oncontextmenu

点击鼠标右键触发

onclick

常用点击事件

ondblclick

双击某个对象(只包含鼠标左键)

onmousedown

鼠标按钮按下(不包含鼠标右键,其他按键都可以)

onmouseenter

鼠标指针移动到绑定此事件的元素时触发

onmouseleave

鼠标指针从绑定此事件的元素移出时触发

onmousemove

鼠标在绑定此事件的元素上移动时触发

onmouseover

鼠标移到绑定此事件的元素之上触发

onmouseout

鼠标从绑定此事件的元素移开时触发

onmouseup

鼠标按键被松开时触发(不包含鼠标右键,其他按键都可以)

键盘事件

事件

描述

onkeydown

键盘被按下(键盘所有按键均能触发)

onkeypress

键盘被按下(只识别数字字母等按键,不识别其他功能按键)

onkeyup

键盘按下并抬起后(键盘所有按键均可触发)

框架/对象(Frame/Object)事件

事件

描述

onabort

图片的加载被中断

onbeforeunload

即将离开页面(刷新或关闭)时触发

onerror

在加载文档或图像时发生错误。 ( <object>, <body>和 <frameset>)

onhashchange

在当前 URL 的锚部分发生改变时触发(简单路由的实现原理)

onload

页面或图像完成加载时触发

执行顺序onload>onpageshow

onpageshow

该事件在用户访问页面时触发

执行顺序onload>onpageshow

onpagehide

该事件在用户离开当前网页跳转到另外一个页面时触发

onresize

窗口或框架被重新调整大小(常用于响应式页面实现)

onscroll

某个元素内部出现滚动条,并滚动时发生的事件(window则为浏览器滚动时,触发)

onunload

用户退出页面时触发

 

表单事件

事件

描述

onblur

元素失去焦点时

onchange

表单元素value发生变化并失去焦点后,触发

onfocus

元素获取焦点时

onfocusin

元素即将获取焦点时

onfocusout

元素即将失去焦点时触发

oninput

元素获取用户输入时触发(每次输入都会触发)

onreset

表单重置时触发(针对form元素)

onsearch

input中输入信息后,按下 "回车" 键后触发(type必须为search)

onselect

用户选取文本时触发 ( input和textarea都可以触发)

onsubmit

表单提交时触发(针对form元素)

 

剪贴板事件

事件

描述

oncopy

该事件在用户拷贝元素内容时触发(ctrl+c 或鼠标右键copy均可触发)--常用于input/textarea

oncut

该事件在用户剪切元素内容时触发--常用于input/textarea

onpaste

该事件在用户粘贴元素内容时触发--常用于input/textarea

打印事件

事件

描述

onafterprint

该事件在打印窗口关闭时触发

(使用打印对话框关闭时,可触发,一般将事件绑定在body上)

onbeforeprint

该事件在页面即将开始打印时触发(在打开打印窗口前触发,一般将事件绑定在body上

拖动事件

事件

描述

ondrag

元素正在拖动时持续触发

ondragstart

开始拖动元素时触发

ondragend

完成元素拖动后触发

ondragenter

被拖动的对象进入绑定此事件的元素范围内时触发此事件

ondragover

被拖动的对象在绑定此事件的元素范围内拖动时持续触发此事件

ondragleave

当被拖动的对象离开绑定此事件的元素范围内时触发此事件;

ondrop

在一个拖动过程中,释放鼠标键时触发此事件;

要被释放到的目标容器的ondragover默认事件必须被禁用,这点至关重要!

 

动画事件

事件

描述

animationend

CSS @keyframes动画结束播放时触发,一般用document进行监听

animationiteration

CSS @keyframes动画重复播放时触发,一般用document进行监听

animationstart

CSS @keyframes动画开始播放时触发,一般用document进行监听

transitionend

CSS transition完成过渡后触发,一般用document进行监听

 

其他实用事件

事件

描述

onmessage

WebSocketWeb WorkerEvent Source、postMessage、子 frame或父窗口接收到消息时触发

onpopstate

该事件在窗口的浏览历史(history 对象)发生改变时触发,VueRouter的history实现原理

onstorage

该事件在 Web Storage(HTML 5 Web 存储)更新时触发大部分浏览器不支持!

onwheel

鼠标滚轮在元素内部上下滚动时触发(有没有滚动条均触发)

 

  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值