* Iterates over each target and event. * * @param targets - A target element, the window object or the document object. * @param events - An event name or names. * @param iteratee - An iteratee function.
(
targets: EventTargets,
events: string | string[],
iteratee: ( target: EventTarget, event: string, namespace: string | undefined ) => void
)
| 122 | * @param iteratee - An iteratee function. |
| 123 | */ |
| 124 | function forEachEvent( |
| 125 | targets: EventTargets, |
| 126 | events: string | string[], |
| 127 | iteratee: ( target: EventTarget, event: string, namespace: string | undefined ) => void |
| 128 | ): void { |
| 129 | forEach( targets, target => { |
| 130 | target && forEach( events, events => { |
| 131 | events.split( ' ' ).forEach( eventNS => { |
| 132 | const fragment = eventNS.split( '.' ); |
| 133 | iteratee( target, fragment[ 0 ], fragment[ 1 ] ); |
| 134 | } ); |
| 135 | } ); |
| 136 | } ); |
| 137 | } |
| 138 | |
| 139 | /** |
| 140 | * Removes all listeners. |