내가 달성하기 위해 노력하고있어 작은 예입니다jQuery animate : 요소가 이동되지 않도록하려면 어떻게해야합니까?
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()을 사용하지만 그것을위한 솔루션을 찾을 수 없다는 것과 관련이 있다고 생각한다.
미리 알려 주셔서 감사합니다. :)
당신이 애니메이션을 완료하는 변화가 전에 elemOrigPos 다음 사각형의 위치로 대체됩니다 사각형을 통해 신속하게 가져 http://jsfiddle.net/FXFUB/1/. – Bruno
예 알아요. 나는 단지 @Tigraine과 같은 우아한 솔루션을 만들 수 없었다. :) – Bay