gpt4 book ai didi

javascript - jQuery:动画宽度/高度,但保持居中

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:36 25 4
gpt4 key购买 nike

我在页面上有一个元素,我已经水平和垂直居中(这是一个 jQuery UI 模态对话框),我想像这样使用 .animate() 调整它的大小:

<div id="element" style="width: 100px; height: 100px;">
Hi Stack Overflow!
</div>

<script type="text/javascript">
$('#element').animate({ height: "200px" });
</script>

这很好用,除了元素只向下生长。我想要做的是让元素在两个方向上垂直增长(在本例中每个方向 50px)所以它保持居中。有什么办法可以做到吗?

最佳答案

Live Demo

var growEl = $("#grow"),
curHeight = $("#grow").height(),
curTop = growEl.offset().top,
newHeight = 200,
newMargin = curTop -(newHeight -curHeight)/2;

if(newMargin < 0){
newMargin = 0;
}

$("#grow").animate({height:newHeight+"px", marginTop:newMargin + 'px'});

计算利润率的公式

NewTopMargin = CurrentMargin-(NewHeight-OldHeight)/2

感谢@bobsoap 提醒我使用 offset.top

关于javascript - jQuery:动画宽度/高度,但保持居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5182511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com