CustomEvent自定义事件
通过CustomEvent可以定义一个自定义事件,用来定义一个全新的事件目标
CustomEvent()可接收两个参数,第一个参数是一个字符串,用来表示事件类型,第二个参数是一个对象,指定事件属性,可以将这个对象的detail属性设置为一个字符串、对象或其他值,表示事件的上下文
如下代码:
// 定义一个busy事件表示很忙 document.dispatchEvent(new CustomEvent("busy",{ detail: true })) fetch(url) .then(handlerFunc) .catch(handlerError) .finally(()=>{ // 不论请求成功与否,都将busy事件上下文修改为false,表示已经不忙了 document.dispatchEvent(new CustomEvent("busy",{ detail: false })) }) // 监听busy事件情况显示隐藏节点 document.addEventListener("busy", e=>{ if(e.detail){ show() }else{ hide() } })