Skip to content

Instantly share code, notes, and snippets.

@maccman
Created December 30, 2012 20:04
Show Gist options
  • Star 44 You must be signed in to star a gist
  • Fork 10 You must be signed in to fork a gist
  • Save maccman/4414792 to your computer and use it in GitHub Desktop.
Save maccman/4414792 to your computer and use it in GitHub Desktop.
function whichTransitionEvent(){
var t;
var el = document.createElement('fakeelement');
var transitions = {
'transition':'transitionend',
'MSTransition':'msTransitionEnd',
'MozTransition':'transitionend',
'WebkitTransition':'webkitTransitionEnd'
}
for(t in transitions){
if( el.style[t] !== undefined ){
return transitions[t];
}
}
}
@Hengjie
Copy link

Hengjie commented Mar 29, 2014

The way you get around firing function twice is to add a namespace to the event name and turning them all off once one of them have been executed.

this.$el.on('webkitTransitionEnd.blah transitionend.blah msTransitionEnd.blah oTransitionEnd.blah', function(event) {
  this.$el.off(".blah");
}

Obviously, replace blah with your own namespace.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment