事件对象
我们先来写一个例子
<button>点击</button>
<script>
let btn = document.querySelector('button');
btn.onclick = function (event) {
alert(event.target);
}
event就是一个事件对象,写到我们侦听函数的小括号里面,我们可以把它看做是形参。- 事件对象只有有了事件才会存在,它是系统自动创建的,不需要我们传递参数
- 事件对象 是我们事件的一系列相关数据的结合体,我们可以通过事件对象来获取事件的相关数据 比如鼠标点击就包含了鼠标的相关信息:鼠标坐标等等;键盘事件就包含了键盘的相关信息:按下的键盘码等等。
- 这个事件对象我们可以自己命名,比如 event
- 好东西总是会有兼容性的问题,也就是在ie6~8中,浏览器不会传递参数,则需要window.event中获取查找。
事件对象常见的属性和方法
| 事件对象属性方法 | 说明 |
|---|---|
| e.target | 返回触发事件的对象(标准) |
| e.ELement | 返回触发事件的对象(非标准 ie6~8) |
| e.type | 返回事件的类型 比如click mouseover |
| e.cancelBubble | 该属性阻止冒泡 非标准(ie6~8) |
| e.returnValue | 该属性阻止默认事件 非标准(链接跳转) |
| e.preventDefault() | 该方法阻止默认事件 标准 |
| e.stopPropagation() | 该方法阻止冒泡拍排序 |