当指针位于 DIV 上方时,我使用animate()
将 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 标签动画回其原始位置?