diff --git a/src/dom-utils.ts b/src/dom-utils.ts index 3b681d28..fdc9c926 100644 --- a/src/dom-utils.ts +++ b/src/dom-utils.ts @@ -107,15 +107,17 @@ export function updateTransitionEndListener( action: 'add' | 'remove', listener: (event: TransitionEvent) => void ): void { - const method = `${action}EventListener` as - | 'addEventListener' - | 'removeEventListener'; - - // some browsers apparently support `transition` (unprefixed) but only fire - // `webkitTransitionEnd`... - ['transitionend', 'webkitTransitionEnd'].forEach((event) => { - box[method](event, listener as EventListener); - }); + if (listener) { + const method = `${action}EventListener` as + | 'addEventListener' + | 'removeEventListener'; + + // some browsers apparently support `transition` (unprefixed) but only fire + // `webkitTransitionEnd`... + ['transitionend', 'webkitTransitionEnd'].forEach((event) => { + box[method](event, listener as EventListener); + }); + } } /**