这是我想要实现的一个小例子:
var elemOrigPos;
$('div.box').hover(
function() {
var $this = $(this);
elemOrigPos = $this.position();
var offset = 50;
$this.stop(true, true).animate({
'width': '200px',
'height': '200px',
'top': (elemOrigPos.top - offset) + 'px',
'left': (elemOrigPos.left - offset) + 'px'
}, 150);
},
function() {
$(this).stop(true, true).animate({
'width': '100px',
'height': '100px',
'top': (elemOrigPos.top) + 'px',
'left': (elemOrigPos.left) + 'px'
}, 150);
}
);
如果您将鼠标缓慢悬停在元素上,它会正常工作,但一旦您将鼠标悬停在它们上方,它们就会失去原来的位置。我想这与我在动画完成之前使用 position() 但无法找到解决方案有关。
提前感谢您提供解决此行为的任何提示或提示。:)