JavaScript DOM事件流事件捕获事件冒泡
事件
在讲事件流之前,我们先来了解一下事件。
JavaScript与HTML之间的交互是通过事件来实现的。事件:就是文档或浏览器窗口中发生的一些特定的交互瞬间。我们可以使用侦听器(或事件处理程序)来预订事件,以便事件发生时执行相应的代码。说白了,就是当我们对页面上的某些元素进行某些操作(比如鼠标单击)时产生一些特定的行为。比如鼠标单击一个按钮然后弹出一个对话框。这里就涉及到了按钮的click事件,产生的行为就是弹出了一个对话框。
事件最早是在IE3和Netscape Navigator2 中出现的,当时是作为分担服务器运算负载的一种手段。在IE4和Navigator4发布时,这两种浏览器提供了相似但不同的API
事件类型
web浏览器中可能发生的事件有很多类型,不同的事件类型具有不同的事件信息,在“DOM3级事件”中规定了如下几类事件类型:
- UI(User Interface用户界面)事件,当用户与页面上的元素交互时触发
- 焦点事件,当元素获得或失去焦点是触发
- 鼠标事件,当用户通过鼠标在页面上执行操作时触发
- 滚轮事件,当使用鼠标滚轮(或类似设备)时触发
- 文本事件,当在文档中输入文本时触发
- 键盘事件,当用户通过键盘在页面上执行操作时触发
- 合成事件,当为IME(Input Method Edtor,输入法编辑器)输入字符时触发
- 变动(mutation)事件,当底层DOM结构发生变化时触发
有三种绑定事件的方式:
直接在dom元素上指定相应的事件,例如鼠标单击事件:
点我通过JavaScript获取到元素对象,然后通过对象属性的方式绑定事件
点我
还没有评论,来说两句吧...