@whitesev/domutils 1.4.5 → 1.4.7

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.
@@ -67,7 +67,7 @@ export declare class DOMUtilsEvent {
67
67
  * console.log("事件触发",event)
68
68
  * })
69
69
  */
70
- on<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], selector: string | string[] | undefined | null, callback: (this: HTMLElement, event: DOMUtils_Event[T]) => void, option?: DOMUtilsEventListenerOption | boolean): void;
70
+ on<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], selector: string | string[] | undefined | null, callback: (this: HTMLElement, event: DOMUtils_Event[T], selectorTarget: HTMLElement) => void, option?: DOMUtilsEventListenerOption | boolean): void;
71
71
  /**
72
72
  * 绑定事件
73
73
  * @param element 需要绑定的元素|元素数组|window
@@ -92,7 +92,7 @@ export declare class DOMUtilsEvent {
92
92
  * console.log("事件触发",event)
93
93
  * })
94
94
  */
95
- on<T extends Event>(element: DOMUtilsElementEventType, eventType: string, selector: string | string[] | (() => string | string[]) | undefined | null, callback: (this: HTMLElement, event: T) => void, option?: DOMUtilsEventListenerOption | boolean): void;
95
+ on<T extends Event>(element: DOMUtilsElementEventType, eventType: string, selector: string | string[] | (() => string | string[]) | undefined | null, callback: (this: HTMLElement, event: T, selectorTarget: HTMLElement) => void, option?: DOMUtilsEventListenerOption | boolean): void;
96
96
  /**
97
97
  * 取消绑定事件
98
98
  * @param element 需要取消绑定的元素|元素数组
@@ -106,7 +106,7 @@ export declare class DOMUtilsEvent {
106
106
  * DOMUtils.off(document.querySelector("a.xx"),"click")
107
107
  * DOMUtils.off("a.xx","click")
108
108
  */
109
- off<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], callback?: (this: HTMLElement, event: DOMUtils_Event[T]) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
109
+ off<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], callback?: (this: HTMLElement, event: DOMUtils_Event[T], selectorTarget: HTMLElement) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
110
110
  /**
111
111
  * 取消绑定事件
112
112
  * @param element 需要取消绑定的元素|元素数组
@@ -120,7 +120,7 @@ export declare class DOMUtilsEvent {
120
120
  * DOMUtils.off(document.querySelector("a.xx"),"click")
121
121
  * DOMUtils.off("a.xx","click")
122
122
  */
123
- off<T extends Event>(element: DOMUtilsElementEventType, eventType: string, callback?: (this: HTMLElement, event: T) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
123
+ off<T extends Event>(element: DOMUtilsElementEventType, eventType: string, callback?: (this: HTMLElement, event: T, selectorTarget: HTMLElement) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
124
124
  /**
125
125
  * 取消绑定事件
126
126
  * @param element 需要取消绑定的元素|元素数组
@@ -135,7 +135,7 @@ export declare class DOMUtilsEvent {
135
135
  * DOMUtils.off(document.querySelector("a.xx"),"click tap hover")
136
136
  * DOMUtils.off("a.xx",["click","tap","hover"])
137
137
  */
138
- off<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined, callback?: (this: HTMLElement, event: DOMUtils_Event[T]) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
138
+ off<T extends DOMUtils_EventType>(element: DOMUtilsElementEventType, eventType: T | T[], selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined, callback?: (this: HTMLElement, event: DOMUtils_Event[T], selectorTarget: HTMLElement) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
139
139
  /**
140
140
  * 取消绑定事件
141
141
  * @param element 需要取消绑定的元素|元素数组
@@ -150,7 +150,7 @@ export declare class DOMUtilsEvent {
150
150
  * DOMUtils.off(document.querySelector("a.xx"),"click tap hover")
151
151
  * DOMUtils.off("a.xx",["click","tap","hover"])
152
152
  */
153
- off<T extends Event>(element: DOMUtilsElementEventType, eventType: string, selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined, callback?: (this: HTMLElement, event: T) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
153
+ off<T extends Event>(element: DOMUtilsElementEventType, eventType: string, selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined, callback?: (this: HTMLElement, event: T, selectorTarget: HTMLElement) => void, option?: boolean | EventListenerOptions, filter?: (value: DOMUtilsEventListenerOptionsAttribute, index: number, array: DOMUtilsEventListenerOptionsAttribute[]) => boolean): void;
154
154
  /**
155
155
  * 取消绑定所有的事件
156
156
  * @param element 需要取消绑定的元素|元素数组
@@ -215,7 +215,7 @@ export declare interface DOMUtilsEventListenerOptionsAttribute {
215
215
  /**
216
216
  * 用户添加的事件
217
217
  */
218
- originCallBack: (event: Event) => void;
218
+ originCallBack: (event: Event, selectorTarget?: HTMLElement) => void;
219
219
  /**
220
220
  * 子元素选择器
221
221
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whitesev/domutils",
3
- "version": "1.4.5",
3
+ "version": "1.4.7",
4
4
  "description": "使用js重新对jQuery的部分函数进行了仿写",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.esm.js",
@@ -94,7 +94,11 @@ export class DOMUtilsEvent {
94
94
  element: DOMUtilsElementEventType,
95
95
  eventType: T | T[],
96
96
  selector: string | string[] | undefined | null,
97
- callback: (this: HTMLElement, event: DOMUtils_Event[T]) => void,
97
+ callback: (
98
+ this: HTMLElement,
99
+ event: DOMUtils_Event[T],
100
+ selectorTarget: HTMLElement
101
+ ) => void,
98
102
  option?: DOMUtilsEventListenerOption | boolean
99
103
  ): void;
100
104
  /**
@@ -125,7 +129,11 @@ export class DOMUtilsEvent {
125
129
  element: DOMUtilsElementEventType,
126
130
  eventType: string,
127
131
  selector: string | string[] | (() => string | string[]) | undefined | null,
128
- callback: (this: HTMLElement, event: T) => void,
132
+ callback: (
133
+ this: HTMLElement,
134
+ event: T,
135
+ selectorTarget: HTMLElement
136
+ ) => void,
129
137
  option?: DOMUtilsEventListenerOption | boolean
130
138
  ): void;
131
139
  on<T extends Event>(
@@ -144,10 +152,10 @@ export class DOMUtilsEvent {
144
152
  | string
145
153
  | undefined
146
154
  | string[]
147
- | ((this: HTMLElement, event: T) => void)
155
+ | ((this: HTMLElement, event: T, selectorTarget: HTMLElement) => void)
148
156
  | null,
149
157
  callback?:
150
- | ((this: HTMLElement, event: T) => void)
158
+ | ((this: HTMLElement, event: T, selectorTarget: HTMLElement) => void)
151
159
  | DOMUtilsEventListenerOption
152
160
  | boolean,
153
161
  option?: DOMUtilsEventListenerOption | boolean
@@ -217,8 +225,11 @@ export class DOMUtilsEvent {
217
225
  selectorList.push(selector);
218
226
  }
219
227
  // 事件回调
220
- let listenerCallBack: (this: HTMLElement, event: Event) => void =
221
- callback as any;
228
+ let listenerCallBack: (
229
+ this: HTMLElement,
230
+ event: Event,
231
+ selectorTarget?: HTMLElement
232
+ ) => void = callback as any;
222
233
  // 事件配置
223
234
  let listenerOption: DOMUtilsEventListenerOption = {
224
235
  capture: false,
@@ -266,7 +277,7 @@ export class DOMUtilsEvent {
266
277
  const selectorItem = selectorList[index];
267
278
  if (eventTarget.matches(selectorItem)) {
268
279
  /* 当前目标可以被selector所匹配到 */
269
- listenerCallBack.call(eventTarget, event as any);
280
+ listenerCallBack.call(eventTarget, event as any, eventTarget);
270
281
  checkOptionOnceToRemoveEventListener();
271
282
  break;
272
283
  } else {
@@ -284,7 +295,11 @@ export class DOMUtilsEvent {
284
295
  },
285
296
  });
286
297
  } catch (error) {}
287
- listenerCallBack.call($closestMatches, event as any);
298
+ listenerCallBack.call(
299
+ $closestMatches,
300
+ event as any,
301
+ $closestMatches
302
+ );
288
303
  checkOptionOnceToRemoveEventListener();
289
304
  break;
290
305
  }
@@ -338,7 +353,11 @@ export class DOMUtilsEvent {
338
353
  off<T extends DOMUtils_EventType>(
339
354
  element: DOMUtilsElementEventType,
340
355
  eventType: T | T[],
341
- callback?: (this: HTMLElement, event: DOMUtils_Event[T]) => void,
356
+ callback?: (
357
+ this: HTMLElement,
358
+ event: DOMUtils_Event[T],
359
+ selectorTarget: HTMLElement
360
+ ) => void,
342
361
  option?: boolean | EventListenerOptions,
343
362
  filter?: (
344
363
  value: DOMUtilsEventListenerOptionsAttribute,
@@ -362,7 +381,11 @@ export class DOMUtilsEvent {
362
381
  off<T extends Event>(
363
382
  element: DOMUtilsElementEventType,
364
383
  eventType: string,
365
- callback?: (this: HTMLElement, event: T) => void,
384
+ callback?: (
385
+ this: HTMLElement,
386
+ event: T,
387
+ selectorTarget: HTMLElement
388
+ ) => void,
366
389
  option?: boolean | EventListenerOptions,
367
390
  filter?: (
368
391
  value: DOMUtilsEventListenerOptionsAttribute,
@@ -388,7 +411,11 @@ export class DOMUtilsEvent {
388
411
  element: DOMUtilsElementEventType,
389
412
  eventType: T | T[],
390
413
  selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined,
391
- callback?: (this: HTMLElement, event: DOMUtils_Event[T]) => void,
414
+ callback?: (
415
+ this: HTMLElement,
416
+ event: DOMUtils_Event[T],
417
+ selectorTarget: HTMLElement
418
+ ) => void,
392
419
  option?: boolean | EventListenerOptions,
393
420
  filter?: (
394
421
  value: DOMUtilsEventListenerOptionsAttribute,
@@ -414,7 +441,11 @@ export class DOMUtilsEvent {
414
441
  element: DOMUtilsElementEventType,
415
442
  eventType: string,
416
443
  selector?: DOMUtilsEventListenerOptionsAttribute["selector"] | undefined,
417
- callback?: (this: HTMLElement, event: T) => void,
444
+ callback?: (
445
+ this: HTMLElement,
446
+ event: T,
447
+ selectorTarget: HTMLElement
448
+ ) => void,
418
449
  option?: boolean | EventListenerOptions,
419
450
  filter?: (
420
451
  value: DOMUtilsEventListenerOptionsAttribute,
@@ -437,9 +468,9 @@ export class DOMUtilsEvent {
437
468
  selector?:
438
469
  | DOMUtilsEventListenerOptionsAttribute["selector"]
439
470
  | undefined
440
- | ((this: HTMLElement, event: T) => void),
471
+ | ((this: HTMLElement, event: T, selectorTarget: HTMLElement) => void),
441
472
  callback?:
442
- | ((this: HTMLElement, event: T) => void)
473
+ | ((this: HTMLElement, event: T, selectorTarget: HTMLElement) => void)
443
474
  | boolean
444
475
  | EventListenerOptions,
445
476
  option?:
@@ -509,8 +540,11 @@ export class DOMUtilsEvent {
509
540
  /**
510
541
  * 事件的回调函数
511
542
  */
512
- let listenerCallBack: (this: HTMLElement, event: T) => void =
513
- callback as any;
543
+ let listenerCallBack: (
544
+ this: HTMLElement,
545
+ event: T,
546
+ selectorTarget: HTMLElement
547
+ ) => void = callback as any;
514
548
 
515
549
  /**
516
550
  * 事件的配置
@@ -215,7 +215,7 @@ export declare interface DOMUtilsEventListenerOptionsAttribute {
215
215
  /**
216
216
  * 用户添加的事件
217
217
  */
218
- originCallBack: (event: Event) => void;
218
+ originCallBack: (event: Event, selectorTarget?: HTMLElement) => void;
219
219
  /**
220
220
  * 子元素选择器
221
221
  */