本文实例讲述了JavaScript事件对象event用法。分享给大家供大家参考,具体如下:
前面的文章已经介绍了JavaScript为事件指定处理程序的五种方式。
下面继续介绍JavaScript的事件对象event。
事件对象event包含导致事件的元素、事件的类型以及其他与特定事件相关的信息。
1、DOM中的事件对象
若直接将事件处理程序指定给了目标元素,则this,currentTarget
和target
包含相同的值;若事件处理程序存在于按钮的父节点中,则this
和currentTarget
等于父节点,而target等于按钮元素。
在需要通过一个函数处理多个事件时,可以使用type属性:
var btn = document.getElementsByTagName("button")[0]; var handler = function(event) { switch(event.type) { case "click": alert("click"); case "mouseover": alert("mouseover"); case "mouseout": alert("mouseout"); } } btn.onclick = handler; btn.onmouseover = handler; btn.onmouseout = handler;
注意:只有在事件处理程序执行期间,event对象才会存在;一旦事件处理程序执行完毕,event对象就会被销毁。
2、IE中的事件对象
访问IE中的event对象有几种不同的方式:
1) 在使用DOM0级方法添加事件处理程序时,通过window.event
访问event对象;
2) 在使用attachEvent()
方法添加事件处理程序时,event对象会作为参数被传入事件处理程序中,也可以通过window.event
访问event对象;
3) 在通过HTML特性指定事件处理程序时,还可以通过一个名为event的变量来访问event对象。
IE中的事件目标通过srcElement属性获取,this不一定等于事件目标:在使用DOM0级方法添加事件处理程序时,this等于事件目标,但在使用attachEvent()
方法添加事件处理程序时,this
则不等于事件目标。
3、跨浏览器的事件
var EventUtil = { addHandler: function(element, type, handler) { ...... }, getEvent: function(event) { return event "button")[0]; btn.onclick = function(event) { event = EventUtil.getEvent(event); EventUtil.preventDefault(event); EventUtil.stopPropagation(event); alert(event.target.type); // 输出:click }
PS:关于javascript事件说明可参考本站javascript事件与功能说明大全:http://tools.jb51.net/table/javascript_event
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript事件相关操作与技巧大全》、《JavaScript页面元素操作技巧总结》、《JavaScript操作DOM技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 文章.2004-被遗忘的时光【华博音乐】【WAV+CUE】
- 群星《青葱韶歌》原力计划·毕业季企划合辑[FLAC+分轨][661M]
- 群星《抖烧 DSD》抖音神曲 [WAV分轨][992M]
- 庾澄庆《哈林天堂》索尼音乐[WAV+CUE][1G]
- 英雄联盟全球总决赛多久打一次 全球总决赛举办频率介绍
- 第二届老头杯什么时候开始选人 第二届老头杯选人时间介绍
- 英雄联盟第二届老头杯什么时候开始 老头杯s2赛程时间队伍名单汇总
- AI赋能卓越显示技术共筑数字未来:三星显示器产品矩阵亮相2024进博会
- 技术剖析:天玑9400如何打造移动最强GPU和游戏体验?
- 顶级装备 实力登顶:三星显示器双十一焕新升级最后冲刺
- 陈影《绝色靓声》WAV+CUE
- 龚玥《禅是一枝花(6N纯银SQCD)》原抓WAV+CUE
- 刘德丽《寂寞在唱歌HQCD+A2HD5》[WAV+CUE]
- 萧亚轩《钻石糖》金牌大风[WAV+CUE][989M]
- 王菲《王菲精选-菲卖品》环球唱片SHM-SACD[ISO][1.9G]