diff options
Diffstat (limited to 'client/lib/cssEvents.js')
-rw-r--r-- | client/lib/cssEvents.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/client/lib/cssEvents.js b/client/lib/cssEvents.js new file mode 100644 index 00000000..487ba69b --- /dev/null +++ b/client/lib/cssEvents.js @@ -0,0 +1,42 @@ +// XXX Should we use something like Moderniz instead of our custom detector? + +var whichTransitionEvent = function() { + var t; + var el = document.createElement('fakeelement'); + var transitions = { + transition:'transitionend', + OTransition:'oTransitionEnd', + MSTransition:'msTransitionEnd', + MozTransition:'transitionend', + WebkitTransition:'webkitTransitionEnd' + }; + + for (t in transitions) { + if (el.style[t] !== undefined) { + return transitions[t]; + } + } +}; + +var whichAnimationEvent = function() { + var t; + var el = document.createElement('fakeelement'); + var transitions = { + animation:'animationend', + OAnimation:'oAnimationEnd', + MSTransition:'msAnimationEnd', + MozAnimation:'animationend', + WebkitAnimation:'webkitAnimationEnd' + }; + + for (t in transitions) { + if (el.style[t] !== undefined) { + return transitions[t]; + } + } +}; + +CSSEvents = { + transitionend: whichTransitionEvent(), + animationend: whichAnimationEvent() +}; |