自定义事件

                                               

自定义事件,其实就是给这个dom注册一个事件,然后派发出一个对应的事件出去

指定了事件类型,还有事件的参数。

语法 : event = new Event(typeArg, eventInit) 

  typeArg是一个表示事件类型的字符串。

  eventInit是事件的配置项:

    "bubbles",可选,Boolean类型,默认值为 false,表示该事件是否冒泡。

    "cancelable",可选,Boolean类型,默认值为 false, 表示该事件能否被取消。

    "composed",可选,Boolean类型,默认值为 false,指示事件是否会在阴影根之外

 

 

 

CustomEven

和Event()方法类似,不过在创建的时候,CustomEventInit中多了一个detail字段,可以用来传递额外的对象,而且少了composed字段。

 

 

 

document.createEvent()

  这种方式已经被官方声明不推荐使用了。但是浏览器都是支持的,IE也都支持

  document.createEvent('Event') 创建一个自定义事件之后,在触发事件之前一定需要进行初始化。而且要注意只能是document创建,不过使用的时候,所有元素都可以,和之前两种方式一样。

  初始化事件的时候指定事件名及能否冒泡,能否被阻止等。

 

总结:

自定义事件其实套路都一样:

1.添加事件监听(指名要监听的事件名是什么)

2.触发事件,听过基础事件来触发(比如click,keyword等),里面再包一层,去触发自定义的事件。只要传入new出来的Even对象,那么浏览器会根据Event对象里面的事件名,来触发对应的事件。(如果有监听的话)

带参数的自定义事件

不带参数的自定义事件

兼容性好的自定义事件

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值