前端事件大全

在网上搜集了一些前端JS中的事件:

Mouse 事件 描述
onClick 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击
onDblClick 鼠标双击事件
onMouseDown 鼠标上的按钮被按下了
onMouseUp 鼠标按下后,松开时激发的事件
onMouseOver 当鼠标移动到某对象范围的上方时触发的事件
onMouseMove 鼠标移动时触发的事件
onMouseOut 当鼠标离开某对象范围时触发的事件
onKeyPress 当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象]
onKeyDown 当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象]
onKeyUp 当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象]
ondrag 元素被拖动时运行的脚本。
ondragend 在拖动操作末端运行的脚本。
ondragenter 当元素元素已被拖动到有效拖放区域时运行的脚本。
ondragleave 当元素离开有效拖放目标时运行的脚本。
ondragover 当元素在有效拖放目标上正在被拖动时运行的脚本。
ondragstart 在拖动操作开端运行的脚本。
ondrop 当被拖元素正在被拖放时运行的脚本。
onmousewheel 当鼠标滚轮正在被滚动时运行的脚本。
onscroll 当元素滚动条被滚动时运行的脚本。

页面相关事件 描述
onAbort 图片在下载时被用户中断
onBeforeUnload 当前页面的内容将要被改变时触发的事件
onError 捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误
onLoad 页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成
onMove 浏览器的窗口被移动时触发的事件
onResize 当浏览器的窗口大小被改变时触发的事件
onScroll 浏览器的滚动条位置发生变化时触发的事件
onStop 浏览器的停止按钮被按下时触发的事件或者正在下载的文件被中断
onUnload 当前页面将被改变时触发的事件

表单相关事件 描述
onBlur 当前元素失去焦点时触发的事件 [鼠标与键盘的触发均可]
onChange 当前元素失去焦点并且元素的内容发生改变而触发的事件 [鼠标与键盘的触发均可]
onFocus 当某个元素获得焦点时触发的事件
onReset 当表单中RESET的属性被激发时触发的事件
onSubmit 一个表单被递交时触发的事件

oninput 在value改变时触发,实时的,即每增加或删除一个字符就会触发,然而通过js改变value时,却不会触发;
oncontextmenu 当上下文菜单被触发时运行的脚本。
onformchange 在表单改变时运行的脚本。
onforminput 当表单获得用户输入时运行的脚本。
oninput 当元素获得用户输入时运行的脚本。
oninvalid 当元素无效时运行的脚本。

滚动字幕事件 描述
onBounce 在Marquee内的内容移动至Marquee显示范围之外时触发的事件
onFinish 当Marquee元素完成需要显示的内容后触发的事件
onStart 当Marquee元素开始显示内容时触发的事件

编辑事件事件 描述
onBeforeCopy 当页面当前的被选择内容将要复制到浏览者系统的剪贴板前触发的事件
onBeforeCut 当页面中的一部分或者全部的内容将被移离当前页面[剪贴]并移动到浏览者的系统剪贴板时触发的事件
onBeforeEditFocus 当前元素将要进入编辑状态
onBeforePaste 内容将要从浏览者的系统剪贴板传送[粘贴]到页面中时触发的事件
onBeforeUpdate 当浏览者粘贴系统剪贴板中的内容时通知目标对象
onContextMenu 当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件 [试试在页面中的<body>中加入onContentMenu="return false"就可禁止使用鼠标右键了]
onCopy 当页面当前的被选择内容被复制后触发的事件
onCut 当页面当前的被选择内容被剪切时触发的事件
onDrag 当某个对象被拖动时触发的事件 [活动事件]
onDragDrop 一个外部对象被鼠标拖进当前窗口或者帧
onDragEnd 当鼠标拖动结束时触发的事件,即鼠标的按钮被释放了
onDragEnter 当对象被鼠标拖动的对象进入其容器范围内时触发的事件
onDragLeave 当对象被鼠标拖动的对象离开其容器范围内时触发的事件
onDragOver 当某被拖动的对象在另一对象容器范围内拖动时触发的事件
onDragStart 当某对象将被拖动时触发的事件
onDrop 在一个拖动过程中,释放鼠标键时触发的事件
onLoseCapture 当元素失去鼠标移动所形成的选择焦点时触发的事件
onPaste 当内容被粘贴时触发的事件
onSelect 当文本内容被选择时的事件
onSelectStart 当文本内容选择将开始发生时触发的事件

数据绑定事件 描述
onAfterUpdate 当数据完成由数据源到对象的传送时触发的事件
onCellChange 当数据来源发生变化时
onDataAvailable 当数据接收完成时触发事件
onDatasetChanged 数据在数据源发生变化时触发的事件
onDatasetComplete 当来子数据源的全部有效数据读取完毕时触发的事件
onErrorUpdate 当使用onBeforeUpdate事件触发取消了数据传送时,代替onAfterUpdate事件
onRowEnter 当前数据源的数据发生变化并且有新的有效数据时触发的事件
onRowExit 当前数据源的数据将要发生变化时触发的事件
onRowsDelete 当前数据记录将被删除时触发的事件
onRowsInserted 当前数据源将要插入新数据记录时触发的事件
onAfterPrint 当文档被打印后触发的事件
onBeforePrint 当文档即将打印时触发的事件
onFilterChange 当某个对象的滤镜效果发生变化时触发的事件
onHelp 当浏览者按下F1或者浏览器的帮助选择时触发的事件
onPropertyChange 当对象的属性之一发生变化时触发的事件
onReadyStateChange 当对象的初始化属性值发生变化时触发的事件


Window 事件
onafterprint 文档打印之后运行的脚本。
onbeforeprint 文档打印之前运行的脚本。
onbeforeunload 文档卸载之前运行的脚本。
onerror 在错误发生时运行的脚本。
onhaschange 当文档已改变时运行的脚本。
onload 页面结束加载之后触发。
onmessage 在消息被触发时运行的脚本。
onoffline 当文档离线时运行的脚本。
ononline 当文档上线时运行的脚本。
onpagehide 当窗口隐藏时运行的脚本。
onpageshow 当窗口成为可见时运行的脚本。
onpopstate 当窗口历史记录改变时运行的脚本。
onredo 当文档执行撤销(redo)时运行的脚本。
onresize 当浏览器窗口被调整大小时触发。
onstorage 在 Web Storage 区域更新后运行的脚本。
onundo 在文档执行 undo 时运行的脚本。
onunload 一旦页面已下载时触发(或者浏览器窗口已被关闭)。

Media 事件
onabort 在退出时运行的脚本。
oncanplay 当文件就绪可以开始播放时运行的脚本(缓冲已足够开始时)。
oncanplaythrough 当媒介能够无需因缓冲而停止即可播放至结尾时运行的脚本。
ondurationchange 当媒介长度改变时运行的脚本。
onemptied 当发生故障并且文件突然不可用时运行的脚本(比如连接意外断开时)。
onended 当媒介已到达结尾时运行的脚本(可发送类似“感谢观看”之类的消息)。
onerror 当在文件加载期间发生错误时运行的脚本。
onloadeddata 当媒介数据已加载时运行的脚本。
onloadedmetadata 当元数据(比如分辨率和时长)被加载时运行的脚本。
onloadstart 在文件开始加载且未实际加载任何数据前运行的脚本。
onpause 当媒介被用户或程序暂停时运行的脚本。
onplay 当媒介已就绪可以开始播放时运行的脚本。
onplaying 当媒介已开始播放时运行的脚本。
onprogress 当浏览器正在获取媒介数据时运行的脚本。
onratechange 每当回放速率改变时运行的脚本(比如当用户切换到慢动作或快进模式)。
onreadystatechange 每当就绪状态改变时运行的脚本(就绪状态监测媒介数据的状态)。
onseeked 当 seeking 属性设置为 false(指示定位已结束)时运行的脚本。
onseeking 当 seeking 属性设置为 true(指示定位是活动的)时运行的脚本。
onstalled 在浏览器不论何种原因未能取回媒介数据时运行的脚本。
onsuspend 在媒介数据完全加载之前不论何种原因终止取回媒介数据时运行的脚本。
ontimeupdate 当播放位置改变时(比如当用户快进到媒介中一个不同的位置时)运行的脚本。
onvolumechange 每当音量改变时(包括将音量设置为静音)时运行的脚本。
onwaiting 当媒介已停止播放但打算继续播放时(比如当媒介暂停已缓冲更多数据)运行脚本


手机端
处理Touch事件能让你跟踪用户的每一根手指的位置。你可以绑定以下四种Touch事件:
1.touchstart: // 手指放到屏幕上的时候触发
2.touchmove: // 手指在屏幕上移动的时候触发
3.touchend: // 手指从屏幕上拿起的时候触发
4touchcancel: // 系统取消touch事件的时候触发。至于系统什么时候会取消,不详
属性
1.client / clientY:// 触摸点相对于浏览器窗口viewport的位置
2.pageX / pageY:// 触摸点相对于页面的位置
3.screenX /screenY:// 触摸点相对于屏幕的位置
4.identifier: // touch对象的unique ID

//touchstart事件
function touchSatrtFunc(e) {
//evt.preventDefault(); //阻止触摸时浏览器的缩放、滚动条滚动等
var touch = e.touches[0]; //获取第一个触点
var x = Number(touch.pageX); //页面触点X坐标
var y = Number(touch.pageY); //页面触点Y坐标
//记录触点初始位置
startX = x;
startY = y;
}
//touchmove事件
function touchMoveFunc(e) {
//evt.preventDefault(); //阻止触摸时浏览器的缩放、滚动条滚动等
var touch = evt.touches[0]; //获取第一个触点
var x = Number(touch.pageX); //页面触点X坐标
var y = Number(touch.pageY); //页面触点Y坐标
var text = 'TouchMove事件触发:(' + x + ', ' + y + ')';
//判断滑动方向
if (x - startX != 0) {
//左右滑动
}
if (y - startY != 0) {
//上下滑动
}
}

posted on 2015-12-31 14:37  Ricky_Huang  阅读(3072)  评论(0编辑  收藏  举报