19. 事件类型
鼠标事件
页面上的所有元素都支持鼠标事件。除了 mouseenter 和 mouseleave ,所有鼠标事件都会冒泡。也可以被取消,而取消鼠标事件将会影响浏览器的默认行为。
类型 | 描述 |
---|---|
click | 在用户单击主鼠标按钮(一般是左边的按钮)或者按下回车键时触发。 |
dblclick | 在用户双击主鼠标按钮(一般是左边的按钮)时触发。 |
mousedown | 在用户按下了任意鼠标按钮时触发。不能通过键盘触发这个事件。 |
mouseenter | 在鼠标光标从元素外部首次移动到元素范围之内时触发。这个事件不冒泡,而且在光标移动到后代元素上不会触发。 |
mouseleave | 在位于元素上方的鼠标光标移动到元素范围之外时触发。这个事件不冒泡。 |
mousemove | 当鼠标指针在元素内部移动时重复地触发。不能通过键盘触发这个事件。 |
mouseout | 在鼠标指针位于一个元素上方,然后用户将其移入另一个元素时触发。 |
mouseover | 在鼠标指针位于一个元素外部,然后用户将其首次移入另一个元素边界之内时触发。 |
mouseup | 在用户释放鼠标按钮时触发。不能通过键盘触发这个事件。 |
<img src="onclick.jpg" onclick="alert(this.src)">
鼠标滚轮事件
当用户通过鼠标滚轮与页面交互、在垂直方向上滚动页面时(无论向上还是向下),就会触发 mousewheel事件。这个事件可以在任何元素上面触发,最终会冒泡到 document (IE8)或 window (IE9、Opera、Chrome 及 Safari)对象。与 mousewheel 事件对应的 event 对象除包含鼠标事件的所有标准信息外,还包含一个特殊的 wheelDelta 属性。当用户向前滚动鼠标滚轮时, wheelDelta 是 120 的倍数;当用户向后滚动鼠标滚轮时, wheelDelta 是120 的倍数。
EventUtil.addHandler(document, "mousewheel", function(event){
event = EventUtil.getEvent(event);
alert(event.wheelDelta);
});
键盘与文本事件
用户在使用键盘时会触发键盘事件。
类型 | 描述 |
---|---|
keydown | 当用户按下键盘上的任意键时触发,而且如果按住不放的话,会重复触发此事件。 |
keypress | 当用户按下键盘上的字符键时触发,而且如果按住不放的话,会重复触发此事件。 |
keyup | 当用户释放键盘上的键时触发。 |
textInput | 这个事件是对 keypress 的补充,用意是在将文本显示给用户之前更容易拦截文本。 |
焦点事件
事件 | 描述 |
---|---|
blur | 在元素失去焦点时触发。 |
focus | 在元素获得焦点时触发。 |
focusin | 在元素获得焦点时触发。支持这个事件的浏览器有 IE5.5+、Safari 5.1+、Opera 11.5+和 Chrome。 |
focusout | 在元素失去焦点时触发。支持这个事件的浏览器有 IE5.5+、Safari 5.1+、Opera 11.5+和 Chrome。 |
触摸与手势事件
事件 | 描述 |
---|---|
touchstart | 当手指触摸屏幕时触发;即使已经有一个手指放在了屏幕上也会触发。 |
touchmove | 当手指在屏幕上滑动时连续地触发。在这个事件发生期间,调用 preventDefault()可以阻止滚动。 |
touchend | 当手指从屏幕上移开时触发。 |
touchcancel | 当系统停止跟踪触摸时触发。 |
评论
共0 条评论