事件类型(js)

  • 焦点事件:在页面获得或失去焦点时触发。 与document.hasFocus和document.activeElement属性配合,可以得到用户在页面的行踪。

blur:元素失去焦点时触发。这个事件不会冒泡。

focus:在元素获得焦点时触发。这个事件不会冒泡。

focusin:在元素获得焦点时触发。这个事件会冒泡。

focusout:在元素失去焦点时触发。这个事件会冒泡。

  • 鼠标和滚轮事件

click:单击鼠标或者按下回车键触发。(可通过鼠标和键盘触发)

dblclick:双击鼠标按钮时触发。

mousedown:按下任意鼠标按钮时触发。不能通过键盘触发。

mouseenter:鼠标光标从元素外部首次移动到元素范围之内时触发。不冒泡。

mouseleave:元素上方的鼠标光标移动到元素范围之外时触发。不冒泡。

mousemove:鼠标指针在元素内部移动时重复的触发。不能通过键盘触发。

mouseout:鼠标指针位于一个元素上方,然后用户将其移入另一个元素时触发。

mouseover:在鼠标指针位于一个元素外部,额庵后用户将其移入到另一个元素边界之内时触发。

mouseup:释放鼠标按钮时触发。不能通过键盘触发。

除去阴影部分,均会冒泡。

事件触发顺序:mousedown--mouseup--click--mousedown--mouseup--click--dbclick.

客户端坐标位置:clientX,clientY.(通过事件对象获得)

页面坐标位置:pageX,pageY.(在没有页面滚动情况下,客户端位置和页面位置相同)

屏幕坐标位置:screenX,screenY.

  • 键盘和文本事件

keydown:按下键盘上的任意键时触发,如果按住不放会重复触发事件。

keypress:按下键盘上的字符键时触发。

keyup:释放键盘上的键时触发。

以上三个事件在用户通过文本输入框时做常用到。

  1. 键码:在发生keydown 和keyup事件时,event.keyCode属性会包含一个代码,与键盘上的键对应。
  2. 字符编码:charCode.
上一篇:setInterval中this


下一篇:剑指Offer - 九度1283 - 第一个只出现一次的字符