Я использую animate()
для анимации тега DIV слева, когда указатель находится над DIV. И когда указатель покидает тег DIV, он возвращается в исходное положение. Проблема здесь в том, что анимация перемещает тег DIV на 50 пикселей влево при наведении мыши и на 50 пикселей вправо при отпускании мыши.
Это заставляет DIV перемещаться на 50 пикселей вправо, даже если анимация не завершена.
$('body').on('mouseenter', '.image-photo-previous', function() {
$(this).animate({marginLeft: '-=50px'}, 300, 'swing');
});
$('body').on('mouseleave', '.image-photo-previous', function() {
$(this).animate({marginLeft: '+=50px'}, {queue: false}, 300, 'swing');
});
http://jsfiddle.net/edgren/CubZy/
Как я могу заставить тег DIV анимироваться обратно в исходное положение, даже если анимация не завершена при отпускании мыши?