I have a problem with overlapping transitions - one transition starts before the previous one gets to end.
$obj.stop(true, false).transition({'-webkit-transform': 'translateX(' + (pos) + 'px)', 'width':width + 'px'}, 1500 );
JsFiddle example: http://jsfiddle.net/s4r88/18/.
If you hover the buttons quickly enough you'll see the animation 'jumps' to its final settings without the transition. I've tried using .stop() and .clearQueue() methods to no avail.
I know there are other ways to achieve this (jQuery.animate(), writing static css), but I think there must be a way to solve this within jQuery.transitions.
Any ideas?
jQuery transition will chain animations by default. So, just don't use any stop() method as you did in your code. Actually stop() is not supposed to work with transition().
http://jsfiddle.net/s4r88/24/
The caveat is that if you're hovering all menus, all animations will play one after the other. As a sidenote, there are some pull requests/forks of jQuery Transit that adds stop() functionnality : https://github.com/rstacruz/jquery.transit/pulls