js中event

一、event初识

1、概念
Event 对象代表事件的状态,当dom tree中某个事件被触发的时候,会同时自动产生一个用来描述事件所有的相关信息(比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。)的对象,这个对象就是event(事件对象)
2、获取event方法
(1)直接通过event获取
代码中写event.
(2)通过函数传参数的形式

 let tags = document.getElementsByTagName("button")
  event.cancelBubble
  tags[0].addEventListener("click", function (e) {
    console.log(e)
    }

二、event重要知识点

1、冒泡和捕获
参考:js事件冒泡详解
阻止冒泡:e.stopPropagation或者window.event.cancelBubble = true
通常考虑兼容性要这样写:

function stopBubble(e) {
            if (e && e.stopPropagation) {
                e.stopPropagation(); //因此它支持W3C的stopPropagation()方法 
            } else {
                window.event.cancelBubble = true; //否则,我们需要使用IE的方式来取消事件冒泡 
            }
}

2、默认阻止
preventDefault()或者e.returnValue=false
参考:preventDefault() 事件方法
阻止默认的行为,比如button默认行为是提交,使用了默认阻止,那button就不会提交,url默认是跳转,使用了默认阻止就不会跳转


  cancelFunc:function () {
    if(event.preventDefault){
      event.preventDefault();
    }else {
      event.returnValue = false;
    }
  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值