事件是可以被 JavaScript 侦测到的行为; 事件通常与函数配合使用, 当事件发生时函数才会执行. JavaScript 允许您在事件被侦测到时执行代码.
网页中的每个元素都可以产生某些可以触 JavaScrip 函数的事件. 比方说, 我们可以在用户点击某按钮时产生一个 onClick 事件来触发某个函数. 事件在 html 页面中定义, 它可以是浏览器或用户做的某些事情.
JavaScript 程序采用了异步事件驱动编程 (Event-driven programming) 模型, 维基百科对它的解释是:
事件驱动程序设计 (Event-driven programming) 是一种电脑程序设计模型. 这种模型的程序运行流程是由用户的动作 (如鼠标的按键, 键盘的按键动作) 或者是由其他程序的消息来决定的.
相对于批处理程序设计 (batch programming) 而言, 程序运行的流程是由程序员来决定. 批量的程序设计在初级程序设计教学课程上是一种方式. 然而, 事件驱动程序设计这种设计模型是在交互程序 (Interactive program) 的情况下孕育而生的.
由于用户的行为是不确定的. 这种场景是传统的同步编程模型没法解决的, 因为你不可能等用户操作完了才执行后面的代码. 所以在 JavaScript 中使用了异步事件, 也就是说: JS 中的事件都是异步执行的.
事件驱动程序模型基本的实现原理基本上都是使用 事件循环(Event Loop), 这部分内容涉及浏览器事件模型, 回调原理.
JavaScript DOM,BOM 模型中, 同样异步的还有 setTimeout,XMLHTTPRequest 这类 API 并不是 JavaScript 语言本身就有的.
JavaScript 常用事件
1,onLoad : 当页面加载完毕后触发, 常用于 body 元素
2,onUnload : 当页面关闭后触发, 常用于 body 元素
3,onBlur : 当失去焦点时触发, 常用于 input 表单元素
4,onFocus : 当获得焦点时触发, 常用于 input 表单元素
5,onClick : 当点击时触发, 可以用于任何元素
6,onMouseOver : 当鼠标悬浮时触发
7,onMouseOut : 当鼠标离开时触发
8,onMouseDown : 当鼠标按下时触发
9,onMouseUp : 当鼠标弹起时触发
10,onMouseMove : 当鼠标移动时触发
11,onChange : 当状态改变时触发, 常用于 select 下拉选框
12,onSelect : 当文本框中的文本选中时触发
13,onkeypress : 当键盘按下时触发(要快于 onkeydown)
14,onkeydown : 当键盘按下时触发(可能捕获功能键, 如上下左右)
15,onkeyup : 当键盘弹起时触发
16,onSubmit : 当表单提交时触发, 常用于 form 表单元素
17,onReset : 当表单重置时触发, 常用于 form 表单元素
来源: http://www.css88.com/qa/javascript/12098.html