The transitionend
event is fired when a CSS transition has completed. In the case where a transition is removed before completion, such as if the transition-property
is removed or display
is set to none
, then the event will not be generated.
Bubbles | Yes |
---|---|
Cancelable | Yes |
Interface | TransitionEvent |
Event handler property | ontransitionend |
The transitionend
event is fired in both directions - as it finishes transitioning to the transitioned state, and when it fully reverts to the default or non-transitioned state. If there is no transition delay or duration, if both are 0s or neither is declared, there is no transition, and none of the transition events are fired. If the transitioncancel
event is fired, the transitionend
event will not fire.
The original target for this event is the Element
that had the transition applied. You can listen for this event on the Window
interface to handle it in the capture or bubbling phases. For full details on this event please see the page on HTMLElement: transitionend.
Examples
This code adds a listener to the transitionend
event:
window.addEventListener('transitionend', () => { console.log('Transition ended'); });
The same, but using the ontransitionend
property instead of addEventListener()
:
window.ontransitionend = () => { console.log('Transition ended'); };
See a live example of this event.
Specifications
Specification | Status | Comment |
---|---|---|
CSS Transitions The definition of 'transitionend' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
transitionend event | Chrome No support No | Edge No support No | Firefox Full support 51 | IE ? | Opera ? | Safari Full support Yes | WebView Android No support No | Chrome Android No support No | Firefox Android Full support 51 | Opera Android ? | Safari iOS Full support Yes | Samsung Internet Android No support No |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
See also
- The
GlobalEventHandlers.ontransitionend
event handler - The
TransitionEvent
interface - CSS properties:
transition
,transition-delay
,transition-duration
,transition-property
,transition-timing-function
- Related events:
transitionrun
,transitionstart
,transitioncancel
- This event on
HTMLElement
targets:transitionend
- This event on
Document
targets:transitionend