事件对象

事件对象

我们先来写一个例子

<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() 该方法阻止冒泡拍排序