Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@alicloud/dom-event-hijacker

aliyun233MIT2.3.9TypeScript support: included

DOM 事件拦截,类似于 jQuery 的 delegate

dom, event, hijack, hijacker

readme

@alicloud/dom-event-hijacker

全局或局部的事件劫持器

INSTALL

tnpm i -S  @alicloud/dom-event-hijacker
import hijackClickGlobal, {
  hijackClickInDom
} from '@alicloud/dom-event-hijacker';

// 全局劫持
hijackClickGlobal(hijacker);

// 局部劫持
hijackClickInDom(dom, hijacker);
interface Hijacker<T> {
  condition: (el: HTMLElement) => T | void; // 判定条件,返回「真」即表示劫持成功,改返回值将作为 callback 的第二参数
  callback?(el: HTMLElement, conditionResult: T): void; // 劫持操作
  shouldPreventDefault?: boolean; // 默认仅对链接阻止其默认行为
  shouldStopPropagation?: boolean; // 默认不阻止事件冒泡
}

changelog

CHANGELOG

2.0.0 2021/09/16 @驳是

  • BREAK
    • type InterceptorHijacker
    • noPreventDefaultshouldPreventDefault,默认不阻止默认行为,但 A 链接例外
    • noStopPropagationshouldStopPropagation,默认不阻止冒泡

1.0.0 2020/11/30 @驳是

  • 开源第一版