@whitesev/domutils 1.5.2 → 1.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.amd.js +7 -5
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +7 -5
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +7 -5
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +7 -5
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +7 -5
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +7 -5
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/DOMUtils.ts +1 -1
- package/src/DOMUtilsEvent.ts +9 -6
package/package.json
CHANGED
package/src/DOMUtils.ts
CHANGED
package/src/DOMUtilsEvent.ts
CHANGED
|
@@ -271,19 +271,22 @@ export class DOMUtilsEvent {
|
|
|
271
271
|
let eventTarget = listenerOption.isComposedPath
|
|
272
272
|
? (event.composedPath()[0] as HTMLElement)
|
|
273
273
|
: (event.target as HTMLElement);
|
|
274
|
-
let totalParent =
|
|
275
|
-
|
|
276
|
-
|
|
274
|
+
let totalParent =
|
|
275
|
+
DOMUtilsCommonUtils.isWin(elementItem) ||
|
|
276
|
+
// @ts-ignore
|
|
277
|
+
elementItem === DOMUtilsContext.windowApi.document
|
|
278
|
+
? DOMUtilsContext.windowApi.document.documentElement
|
|
279
|
+
: elementItem;
|
|
277
280
|
let findValue = selectorList.find((selectorItem) => {
|
|
278
281
|
// 判断目标元素是否匹配选择器
|
|
279
|
-
if (eventTarget
|
|
282
|
+
if (eventTarget?.matches(selectorItem)) {
|
|
280
283
|
/* 当前目标可以被selector所匹配到 */
|
|
281
284
|
return true;
|
|
282
285
|
}
|
|
283
286
|
/* 在上层与主元素之间寻找可以被selector所匹配到的 */
|
|
284
287
|
let $closestMatches =
|
|
285
|
-
eventTarget
|
|
286
|
-
if ($closestMatches && totalParent
|
|
288
|
+
eventTarget?.closest<HTMLElement>(selectorItem);
|
|
289
|
+
if ($closestMatches && totalParent?.contains($closestMatches)) {
|
|
287
290
|
eventTarget = $closestMatches;
|
|
288
291
|
return true;
|
|
289
292
|
}
|