From 71a015e10e67028ef1982d14230dc7dc8fa91af5 Mon Sep 17 00:00:00 2001 From: huangjx Date: Sun, 24 Apr 2022 15:28:34 +0800 Subject: [PATCH] improved eventHandler.ts --- src/lib/eventHandler.ts | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/lib/eventHandler.ts b/src/lib/eventHandler.ts index bebabcd..81ad419 100644 --- a/src/lib/eventHandler.ts +++ b/src/lib/eventHandler.ts @@ -14,23 +14,26 @@ const eventHandler = { }); return; } - let el = document.querySelector(target); - if (!el) { + let items = document.querySelectorAll(target); + if (!items) { return; } - el.addEventListener(eventType, function (e) { - let element = e.target as HTMLElement; - if (element === this && selector === target) { - callback.call(element, e); - return; - } - for (; element && element != this; element = element.parentElement) { - if (typeof selector === "string" && element.matches(selector)) { + items.forEach(el => { + el.addEventListener(eventType, function (e) { + let element = e.target as HTMLElement; + if (element === this && selector === target) { callback.call(element, e); - break; + return; } - } - }); + for (; element && element != this; element = element.parentElement) { + if (typeof selector === "string" && element.matches(selector)) { + callback.call(element, e); + break; + } + } + }); + }) + }, remove: function (element: target, eventType: string, callback: callback) {