javascript Event对象详解及使用示例


Posted in Javascript onNovember 22, 2013

Event代表事件状态,如事件发生的元素,键盘状态,鼠标位置和鼠标按钮状态。一旦事件发生,便会生成Event对象,如单击一个按钮,浏览器的内存中就产生相应的 event对象。
event对象只在事件发生的过程中才有效。
event的某些属性只对特定的事件有意义。比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。

【event属性】:
altKey, button, cancelBubble, clientX, clientY, ctrlKey, fromElement, keyCode, offsetX, offsetY, propertyName, returnValue, screenX, screenY, shiftKey, srcElement, srcFilter, toElement, type, x, y
--------------------------------------------------------------------------------
1.altKey
描述:检查alt键的状态。
语法:event.altKey
可能的值:
当alt键按下时,值为 TRUE ,否则为 FALSE 。只读。

2.button
描述:检查按下的鼠标键。
语法:event.button
可能的值:
0 没按键
1 按左键
2 按右键
3 按左右键
4 按中间键
5 按左键和中间键
6 按右键和中间键
7 按所有的键
这个属性仅用于onmousedown, onmouseup, 和 onmousemove 事件。对其他事件,不管鼠标状态如何,都返回 0(比如onclick)。

3.cancelBubble
描述:检测是否接受上层元素的事件的控制。
语法:
event.cancelBubble[ = cancelBubble]
可能的值:
这是一个可读写的布尔值:
TRUE 不被上层原素的事件控制。
FALSE 允许被上层元素的事件控制。这是默认值。
例子:
下面的代码片断演示了当在图片上点击(onclick)时,如果同时shift键也被按下,就取消上层元素(body)上的事件onclick所引发的showSrc()函数。

<SCRIPT LANGUAGE="JScript"> 
function checkCancel() { 
if (window.event.shiftKey) 
window.event.cancelBubble = true; 
} 
function showSrc() { 
if (window.event.srcElement.tagName == "IMG") 
alert(window.event.srcElement.src); 
} 
</SCRIPT> 
<BODY onclick="showSrc()"> 
<IMG onclick="checkCancel()" SRC="sample.gif">

4.clientX
描述:返回鼠标在窗口客户区域中的X坐标。
语法:event.clientX
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

5.clientY
描述:返回鼠标在窗口客户区域中的Y坐标。
语法:event.clientY
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

6.ctrlKey
描述:检查ctrl键的状态。
语法:event.ctrlKey
可能的值:
当ctrl键按下时,值为 TRUE ,否则为 FALSE 。只读。

7.fromElement
描述:检测 onmouseover 和 onmouseout 事件发生时,鼠标所离开的元素。 参考:18.toElement
语法:event.fromElement
注释:
这是个只读属性。

8.keyCode
描述:检测键盘事件相对应的内码。这个属性用于 onkeydown, onkeyup, 和 onkeypress 事件。
语法:event.keyCode[ = keyCode]
可能的值:
这是个可读写的值,可以是任何一个Unicode键盘内码。如果没有引发键盘事件,则该值为 0 。

9.offsetX
描述:检查相对于触发事件的对象,鼠标位置的水平坐标
语法:event.offsetX

10.offsetY
描述:检查相对于触发事件的对象,鼠标位置的垂直坐标
语法:event.offsetY

11.propertyName
描述:设置或返回元素的变化了的属性的名称。
语法:event.propertyName [ = sProperty ]
可能的值:
sProperty 是一个字符串,指定或返回触发事件的元素在事件中变化了的属性的名称。
这个属性是可读写的。无默认值。
注释:
你可以通过使用 onpropertychange 事件,得到 propertyName 的值。
例子:
下面的例子通过使用 onpropertychange 事件,弹出一个对话框,显示 propertyName 的值。

<HEAD> 
<SCRIPT> 
function changeProp() 
{ 
btnProp.value = "This is the new VALUE"; 
} 
function changeCSSProp() 
{ 
btnStyleProp.style.backgroundColor = "aqua"; 
} 
</SCRIPT> 
</HEAD> 
<BODY> 
<P>The event object property propertyName is 
used here to return which property has been 
altered.</P> 
<INPUT TYPE=button ID=btnProp onclick="changeProp()" 
VALUE="Click to change the VALUE property of this button" 
onpropertychange='alert(event.propertyName+" property has changed value")'> 
<INPUT TYPE=button ID=btnStyleProp 
onclick="changeCSSProp()" 
VALUE="Click to change the CSS backgroundColor property of this button" 
onpropertychange='alert(event.propertyName+" property has changed value")'> 
</BODY>

12.returnValue
描述:设置或检查从事件中返回的值
语法:event.returnValue[ = Boolean]
可能的值:
true 事件中的值被返回
false 源对象上事件的默认操作被取消

13.screenX
描述:检测鼠标相对于用户屏幕的水平位置
语法:event.screenX
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

14.screenY
描述:检测鼠标相对于用户屏幕的垂直位置
语法:event.screenY
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

15.shiftKey
描述:检查shift键的状态。
语法:event.shiftKey
可能的值:
当shift键按下时,值为 TRUE ,否则为 FALSE 。只读。

16.srcElement
描述:返回触发事件的元素。只读。例子见本文开头。
语法:event.srcElement

17.srcFilter
描述:返回触发 onfilterchange 事件的滤镜。只读。
语法:event.srcFilter

18.toElement
描述:检测 onmouseover 和 onmouseout 事件发生时,鼠标所进入的元素。
语法:event.toElement
注释:
这是个只读属性。
例子:下面的代码演示了当鼠标移到按钮上时,弹出一个对话框,显示“mouse arrived”

<SCRIPT> 
function testMouse(oObject) { 
if(oObject.contains(event.toElement)) 
{ 
alert("mouse arrived"); 
} 
} 
</SCRIPT> 
: 
<BUTTON ID=oButton onmouseover="testMouse(this)">Mouse Over This.</BUTTON>

19.type
描述:返回事件名。
语法:event.type
注释:
返回没有“on”作为前缀的事件名,比如,onclick事件返回的type是click
只读。

20. x
描述:返回鼠标相对于css属性中有position属性的上级元素的x轴坐标。如果没有css属性中有position属性的上级元素,默认以BODY元素作为参考对象。
语法:event.x
注释:
如果事件触发后,鼠标移出窗口外,则返回的值为 -1
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

21. y
描述:返回鼠标相对于css属性中有position属性的上级元素的y轴坐标。如果没有css属性中有position属性的上级元素,默认以BODY元素作为参考对象。
语法:event.y
注释:
如果事件触发后,鼠标移出窗口外,则返回的值为 -1
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

Javascript 相关文章推荐
jQuery获取浏览器中的分辨率实现代码
Apr 23 Javascript
JQuery对表格进行操作的常用技巧总结
Apr 23 Javascript
使用jquery animate创建平滑滚动效果(可以是到顶部、到底部或指定地方)
May 27 Javascript
JS实现在线统计一个页面内鼠标点击次数的方法
Feb 28 Javascript
javascript实现根据3原色制作颜色选择器的方法
Jul 17 Javascript
json格式数据的添加,删除及排序方法
Jan 21 Javascript
jQuery插件 Jqplot图表实例
Jun 18 Javascript
webix+springmvc session超时跳转登录页面
Oct 30 Javascript
jquery文字填写自动高度的实现方法
Nov 07 Javascript
微信小程序 判断手机号的实现代码
Apr 19 Javascript
原生JS实现移动端web轮播图详解(结合Tween算法造轮子)
Sep 10 Javascript
原生js基于canvas实现一个简单的前端截图工具代码实例
Sep 10 Javascript
js Date概念详细介绍
Nov 22 #Javascript
页面定时刷新(1秒刷新一次)
Nov 22 #Javascript
js判断IE浏览器版本过低示例代码
Nov 22 #Javascript
js获取时间(本周、本季度、本月..)
Nov 22 #Javascript
文本框只能选择数据到文本框禁止手动输入
Nov 22 #Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
Nov 22 #Javascript
jQuery 事件的命名空间简单了解
Nov 22 #Javascript
You might like
php进行支付宝开发中return_url和notify_url的区别分析
2014/12/22 PHP
javascript 异常处理使用总结
2009/06/21 Javascript
JavaScript的递归之递归与循环示例介绍
2013/08/05 Javascript
Jquery之Bind方法参数传递与接收的三种方法
2014/06/24 Javascript
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法
2015/03/30 Javascript
移动端横屏的JS代码(beta)
2016/05/16 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
JS输出空格的简单实现方法
2016/09/08 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
Angularjs 双向绑定时字符串的转换成数字类型的问题
2017/06/12 Javascript
vue webpack实用技巧总结
2018/04/24 Javascript
node.js遍历目录的方法示例
2018/08/01 Javascript
[01:14]3.19DOTA2发布会 三代刀塔人第二代
2014/03/25 DOTA
python 将数据保存为excel的xls格式(实例讲解)
2018/05/03 Python
python调用xlsxwriter创建xlsx的方法
2018/05/03 Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
2019/01/30 Python
python小程序实现刷票功能详解
2019/07/17 Python
pycharm实现print输出保存到txt文件
2020/06/01 Python
python实现批量命名照片
2020/06/18 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
土耳其玩具商店:Toyzz Shop
2019/08/02 全球购物
J2SDK1.5与J2SDK5.0有什么区别
2012/09/19 面试题
美术专业学生个人自我评价
2013/09/19 职场文书
企业道德讲堂实施方案
2014/03/19 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
团拜会策划方案
2014/06/07 职场文书
安全标兵事迹材料
2014/08/17 职场文书
英语三分钟演讲稿
2014/08/19 职场文书
2014年党员干部四风问题自我剖析材料
2014/09/29 职场文书
老人节主持词
2015/07/04 职场文书
德能勤绩工作总结
2015/08/11 职场文书
2016党员党课心得体会
2016/01/07 职场文书
实习员工转正的评语汇总,以备不时之需
2019/12/17 职场文书
详解Js模块化的作用原理和方案
2021/04/29 Javascript
ubuntu如何搭建vsftpd服务器
2022/12/24 Servers