事件对象
和上面提到的函数stopPropagation() 和preventDefault() 一样,event 对象还包含很多有用的属性。W3C 规范中包含的大部分属性都列在下面,更多信息请参照完整的标准规范(http://www.w3.org/TR/DOM-Level-2-Events/)。
事件类型:
bubbles
布尔值,表示事件是否通过DOM 以冒泡形式触发。
事件发生时,反映当前环境信息的属性:
button
表示(如果有)鼠标所按下的按钮。
ctrlKey
布尔值,表示Ctrl 键是否按下。
altKey
布尔值,表示Alt 键是否按下。
shiftKey
布尔值,表示Shift 键是否按下。
metaKey
布尔值,表示Meta 键译注1 是否按下。
表示键盘事件的属性:
isChar
布尔值,表示当前按下的键是否表示一个字符。
charCode
表示当前按键的unicode 值(仅对keypress 事件有效)。
keyCode
表示非字符按键的unicode 值。
which
表示当前按键的unicode 值,不管当前按键是否表示一个字符。
事件发生时的环境参数:
pageX,pageY
事件发生时相对于页面(如viewport 区域)的坐标。
screenX,screenY
事件发生时相对于屏幕的坐标。
广州网站建设,广州网站设计,广州网站制作,网站建设,网站设计,广州网站建设公司,广州网站设计公司
和事件相关的元素:
currentTarget
事件冒泡阶段所在的当前DOM 元素。
target,originalTarget
原始的DOM 元素。
relatedTarget
其他和事件相关的DOM 元素(如果有的话)。
不同的浏览器对这些属性的兼容性也不同,尤其是那些不兼容W3C 的浏览器。幸运的是,诸如jQuery 和Prototype 这些类库为我们解决了这些兼容性问题。