A JavaScript Fancier

伟大的javascript技术研究中...

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  304 随笔 :: 0 文章 :: 479 评论 :: 0 Trackbacks


偶在网上看相关文章然后自己整理的一个对event对象详解教程。

Javascript的Event对象用来描述Javascript的事件,它主要作用于IE4和NN4以后的各个浏览器版本中。Event代表事件状态,如事件发生的元素,键盘状态,鼠标位置和鼠标按钮状态。一旦事件发生,便会生成Event对象,如单击一个按钮,浏览器的内存中就产生相应的 event对象。

IE对事件的引用

在IE4以上版本中,event对象作为window属性访问:window.event。其中引用的window部分是可选的.因此脚本就像全局引用一样来对待event对象:

event.propertyName

event对象成员表:

下面的表格列出了 event 对象引出的成员。

对象
dataTransfer 提供了对于预定义的剪贴板格式的访问,以便在拖曳操作中使用。

集合
bookmarks 返回捆绑到当前事件所影响的行上的 ActiveX® 数据对象(ADO)书签的集合。
boundElements 返回页面上所有绑定到给定数据集的所有元素的集合。

属性
Abstract 使用 event 对象获取高级流重定向器(ASX)文件中项目横幅的 Abstract 内容。
altKey 设置或获取 Alt 键的状态。 检索ALT键的当前状态可能的值 true为关闭,false为不关闭
altLeft 设置或获取左 Alt 键的状态。
Banner 使用 event 对象获取高级流重定向器(ASX)文件中项目的 Banner 内容。
button 设置或获取用户所按的鼠标按钮。
可能的值:
0 没按键
1 按左键
2 按右键
3 按左右键
4 按中间键
5 按左键和中间键
6 按右键和中间键
7 按所有的键

cancelBubble 设置或获取当前事件是否要在事件句柄中向上冒泡。
设置或检索当前事件是否将事件句柄起泡可能的值: false 启用起泡true 取消该事件起泡

clientX 设置或获取鼠标指针位置相对于窗口客户区域的 x 坐标,
其中客户区域不包括窗口自身的控件和滚动条。
属性为只读,没有默认值。
clientY 设置或获取鼠标指针位置相对于窗口客户区域的 y 坐标,
其中客户区域不包括窗口自身的控件和滚动条。
属性为只读,没有默认值。
clientX,clientY不考虑文档滚动,如果要把窗体滚动计在内,加上document.body.scrollLeft,document.body.scrollTop即可

contentOverflow 获取表明文档处理当前 LayoutRect 对象后是否包含附加的内容。
ctrlKey 设置或获取 Ctrl 键的状态。 ctrlKey 检索CTRL键的当前状态可能的值 true为关闭false为不关闭
ctrlLeft 设置或获取左 Ctrl 键的状态。
dataFld 设置或获取 oncellchange 事件影响的数据列。
fromElement 设置或获取事件发生时激活或鼠标将要离开的对象。

keyCode 设置或获取与导致事件的按键关联的 Unicode 按键代码。
该属性与onkeydown onkeyup onkeypress一起使用如果没有引发事件的关键字,则该值为0,
用String.fromCharCode()可将字符代码转换成字符串.

MoreInfo 通过 event 对象获取高级流重定向器(ASX)文件中项目横幅的 MoreInfo 内容。
nextPage 获取打印模板中下页的位置。
offsetX 设置或获取鼠标指针位置相对于触发事件的对象的 x 坐标。
offsetY 设置或获取鼠标指针位置相对于触发事件的对象的 y 坐标。
propertyName 设置或获取对象上发生更改的属性名称。
qualifier 设置或获取由数据源对象提供的数据成员的名称。
reason 设置或获取数据源对象的数据传输结果。
可能的值:
0 数据传输成功
1 数据传输失败
2 数据传输错误

recordset 从数据源对象设置或获取对默认数据集的引用。 该特性为只读
repeat 获取 onkeydown 事件是否正在重复。 该属性只有在onkeydown事件重复时才返回true
returnValue 设置或获取事件的返回值。
可能的值:
true 事件中的值被返回
false 源对象上事件的默认操作被取消

saveType 当 oncontentsave 触发时获取剪贴板类型。

screenX 设置或获取获取鼠标指针位置相对于用户屏幕的 x 坐标。
screenY 设置或获取鼠标指针位置相对于用户屏幕的 y 坐标。
(即鼠标指针相对于用户显示器的左上角的XY坐标的值)

shiftKey 设置或获取 Shift 键的状态。 可能的值 true为关闭,false为不关闭

shiftLeft 设置或获取左 Shift 键的状态。
srcElement 设置或获取触发事件的对象。 (发生事件的文档元素)
srcFilter 设置或获取触发 onfilterchange 事件的滤镜对象。
srcUrn 获取触发事件的行为的统一资源名称(URN)。
除非下面两个条件都为真,否则该特性被设置为null
1.行为被附加到触发事件的要素上
2.在前面的项目符号中定义的行为己指定了一个URN标识符和己触发的事件

toElement 设置或获取用户要将鼠标指针移动指向的对象的引用。
type 从 event 对象中获取事件名称。 如click,mouseover
wheelDelta 设置或获取滚轮按钮滚动的距离和方向。
x 设置或获取鼠标指针位置相对于父文档的 x 像素坐标。
y 设置或获取鼠标指针位置相对于父文档的 y 像素坐标。


注释

event 对象仅在事件中可用──这意味着,你可以在事件句柄中使用该对象,但不能在其它代码中使用。

尽管所有事件属性都可通过所有的 event 对象访问,但是在某些事件中某些属性可能无意义。例如,fromElement 和 toElement 属性仅当处理 onmouseover 和 onmouseout 事件时有意义。

在 Microsoft Visual Basic® 脚本版本(VBScript)中,你必须通过 window 对象访问 event 对象。

此对象在 Microsoft® Internet Explorer 4.0 的脚本中可用。

示例

下面的例子使用了 event 对象来决定用户单击的位置是否在链接上,并且避免在 SHIFT 键按下时导航到链接。

<HTML>
<HEAD><TITLE>取消链接</TITLE>
<SCRIPT LANGUAGE="JScript">
function cancelLink() {
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnValue = false;
}
</SCRIPT>
<BODY onclick="cancelLink()">

要使Event对象各个属性或方法都能实现,应选择IE5.5以上版本。

posted on 2006-06-21 16:14 Yemoo'S JS Blog 阅读(5626) 评论(2)  编辑 收藏 引用 所属分类: javascript语法基础

评论

# re: Javascript的Event对象详解[收集整理] 2007-12-31 15:33 java综合网
http://www.javazh.cn
不错,不错  回复  更多评论
  

# re: Javascript的Event对象详解[收集整理] 2008-03-11 16:00 wanghaishanren
对我来说很有用,谢谢!  回复  更多评论
  

只有注册用户登录后才能发表评论。