js事件
2016-04-05 11:46
369 查看
事件冒泡:
对于IE,解决方案是使用事件冒泡技术,其基本思想是,时间从时间发生的目标最内部开始触发,向上触发到最外部(document对象)。
时间捕获:
时间捕获于冒泡正好相反,它的事件触发顺序是从最外层的对象(document对象)到最里层的对象。事件捕获也可以window级时间,但是需要开发者显示指定。
DOM事件流:
DOM同时支持事件捕获和事件冒泡,但是事件捕获先发生。两个事件流可以遍历DOM中的所有对象,起点和结束点位document对象。
传统事件处理程序指派方法:
传统的时间处理程序指派方法采用两种方式之一将事件程序指派给时间:在JS中或在HTML中。
事件处理程序的名称必须全部小写。
如果要在XHTML中指派事件处理程序,我们只需要在XHTML标记中添加一个事件处理属性,并且将恰在的脚本代码做为属性值。必须注意:在XHTML中,无论是采用哪种指派方式,事件处理程序的名称必须全部是小写字母。
现代事件处理程序指派方法:
在IE中,每个元素和window对象有两个方法:attachEvent()和detachEvent()。
attachEvent()用于将一个事件处理程序绑定到一个事件,而另一个用于解除事件程序的绑定。这两个方法都有两个参数:要指派的事件处理程序的名称、函数名称。
DOM中使用addEventListener()和removeEventListener()方法完成事件处理程序指派和删除的任务。这两种方法有三个参数,分别是事件的名称、要指派的函数、是否处理程序要用在冒泡或捕获阶段。如果处理程序要用在捕获阶段,第三个参数就设为true;如果要用在冒泡阶段,这个参数就设为false。
如果事件处理程序是在捕获阶段用addEventListener()添加,那么要正确删除事件处理程序,就必须在removeEventListener()中指定捕获阶段。
事件处理程序的返回值:
事件处理程序的最有用的功能之一就是它们的返回值可以影响事件的默认行为。所谓默认行为是事件发生时,不需要进行处理,就会正常发生的行为。
Event对象:
触发事件的对象
事件发生时的鼠标信息
事件发生时的键盘信息
定位:
在IE浏览器中,event对象是window对象的一个属性。
DOM标准中规定:event对象只能做为仅有的参数传给事件处理程序。
鼠标事件:
click——用户点击鼠标左键,以及当焦点在一个按钮上,用户按Enter键时,发生click事件
dblclick——当用户双击鼠标左键时,发生dblclick事件
mousedown——当用户按下任意鼠标按钮时,发生mousedown事件
mouseout——当光标在一个元素上,并且将其移除元素边界时,发生mouseout事件
mouseover——当光标在一个元素之外,并且用户将其移动到该元素上时,发生mouseover事件
mouseup——当用户释放任何鼠标按钮时,发生mouseup事件
mousemove——当光标在一个元素上时,重复发生mousemove事件
事件属性:坐标属性;type属性;target(DOM)或srcElement(IE)属性;shiftKey,ctrlKey,altKey,metaKey(DOM)属性;button属性(只在mousedown,mousemove,mouseout,mouseover和mouseup事件)
事件发生顺序:1.mousedown 2.mouseup 3.click 4.mousedown 5.mouseup ...
键盘事件:
keydown——当用户在键盘上按下一个键时发生。如果用户按住键不放,它就重复发生
keypress——当用户在键盘上按下一个字符键(不包括Shift和Ait键等)时发生。如果用户按住键不放,它也重复发生
keyup——当用户释放一个按下的键时发生
事件属性:keyCode属性;charCode属性;target(DOM)或srcElement(IE)属性;shiftKey,ctrlKey,altKey和metaKey(DOM)属性
事件发生次序:当用户按下一个字符键一次时:1.keydown 2.keypress 3.keyup 当用户按下一个非字符键(如Shift键)一次时:1.keydown 2.keyup
HTML事件
load事件
unload事件
abort事件
error事件
select事件
change事件
submit事件
reset事件
resize事件
scroll事件
focus事件
blur事件
对于IE,解决方案是使用事件冒泡技术,其基本思想是,时间从时间发生的目标最内部开始触发,向上触发到最外部(document对象)。
时间捕获:
时间捕获于冒泡正好相反,它的事件触发顺序是从最外层的对象(document对象)到最里层的对象。事件捕获也可以window级时间,但是需要开发者显示指定。
DOM事件流:
DOM同时支持事件捕获和事件冒泡,但是事件捕获先发生。两个事件流可以遍历DOM中的所有对象,起点和结束点位document对象。
传统事件处理程序指派方法:
传统的时间处理程序指派方法采用两种方式之一将事件程序指派给时间:在JS中或在HTML中。
事件处理程序的名称必须全部小写。
如果要在XHTML中指派事件处理程序,我们只需要在XHTML标记中添加一个事件处理属性,并且将恰在的脚本代码做为属性值。必须注意:在XHTML中,无论是采用哪种指派方式,事件处理程序的名称必须全部是小写字母。
现代事件处理程序指派方法:
在IE中,每个元素和window对象有两个方法:attachEvent()和detachEvent()。
attachEvent()用于将一个事件处理程序绑定到一个事件,而另一个用于解除事件程序的绑定。这两个方法都有两个参数:要指派的事件处理程序的名称、函数名称。
DOM中使用addEventListener()和removeEventListener()方法完成事件处理程序指派和删除的任务。这两种方法有三个参数,分别是事件的名称、要指派的函数、是否处理程序要用在冒泡或捕获阶段。如果处理程序要用在捕获阶段,第三个参数就设为true;如果要用在冒泡阶段,这个参数就设为false。
如果事件处理程序是在捕获阶段用addEventListener()添加,那么要正确删除事件处理程序,就必须在removeEventListener()中指定捕获阶段。
事件处理程序的返回值:
事件处理程序的最有用的功能之一就是它们的返回值可以影响事件的默认行为。所谓默认行为是事件发生时,不需要进行处理,就会正常发生的行为。
Event对象:
触发事件的对象
事件发生时的鼠标信息
事件发生时的键盘信息
定位:
在IE浏览器中,event对象是window对象的一个属性。
DOM标准中规定:event对象只能做为仅有的参数传给事件处理程序。
鼠标事件:
click——用户点击鼠标左键,以及当焦点在一个按钮上,用户按Enter键时,发生click事件
dblclick——当用户双击鼠标左键时,发生dblclick事件
mousedown——当用户按下任意鼠标按钮时,发生mousedown事件
mouseout——当光标在一个元素上,并且将其移除元素边界时,发生mouseout事件
mouseover——当光标在一个元素之外,并且用户将其移动到该元素上时,发生mouseover事件
mouseup——当用户释放任何鼠标按钮时,发生mouseup事件
mousemove——当光标在一个元素上时,重复发生mousemove事件
事件属性:坐标属性;type属性;target(DOM)或srcElement(IE)属性;shiftKey,ctrlKey,altKey,metaKey(DOM)属性;button属性(只在mousedown,mousemove,mouseout,mouseover和mouseup事件)
事件发生顺序:1.mousedown 2.mouseup 3.click 4.mousedown 5.mouseup ...
键盘事件:
keydown——当用户在键盘上按下一个键时发生。如果用户按住键不放,它就重复发生
keypress——当用户在键盘上按下一个字符键(不包括Shift和Ait键等)时发生。如果用户按住键不放,它也重复发生
keyup——当用户释放一个按下的键时发生
事件属性:keyCode属性;charCode属性;target(DOM)或srcElement(IE)属性;shiftKey,ctrlKey,altKey和metaKey(DOM)属性
事件发生次序:当用户按下一个字符键一次时:1.keydown 2.keypress 3.keyup 当用户按下一个非字符键(如Shift键)一次时:1.keydown 2.keyup
HTML事件
load事件
unload事件
abort事件
error事件
select事件
change事件
submit事件
reset事件
resize事件
scroll事件
focus事件
blur事件
相关文章推荐
- 利用JS生成01010101……长度可控的序列
- 网页限制上传文件的类型
- 1、json知识与弹窗相关操作。。。
- Extjs 3.4 同值合并
- 用Gson包进行解析本地的json文件
- [pdf.js]预览pdf时,中文名称乱码的问题
- fullPage.js全屏滚动插件 中文帮助文档API
- JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
- Javascript高级程序设计读书笔记(6)
- JS 循环遍历JSON数据
- js中转换Date日期格式
- jsp el表达式
- Json与Xml比较
- Safari5及以下版本不支持Date的横杠字符串格式
- JS限制用户只能输入数字,用正则表达式
- JSP页面间传值问题实例简析
- js获取url参数值的两种方式
- 使用JavaScript
- 考验你的JavaScript底细
- js事件流模型