gpt4 book ai didi

javascript - 插入新元素时如何平滑移动?

转载 作者:太空宇宙 更新时间:2023-11-04 15:44:29 25 4
gpt4 key购买 nike

我在其他元素中间插入了一个新的 div 元素,我希望其他元素以流畅的方式移动到它们的新位置,而不是像现在这样突然移动。

这是我的代码:https://codepen.io/BigEiffelTower/pen/vYBgqZq

<div id="top">
Top of the page
</div>

<div id="middle">

</div>

<div id="bottom">
<form>
<input type="button" value="Add an element">
</form>
End of the page
</div>
#top, #middle, #bottom {
font-size: 1.5em;
border: 2px solid black;
margin: 0.3em
transition: all 2s ease;
}
var btn = document.querySelector('input');
btn.addEventListener('click', updateBtn);

function updateBtn() {
$el = $("<div>", {
id: 'middle-item',
text: "New element"
});
$("#middle").append($el);
}

如何让#three元素在点击按钮时平滑移动?

最佳答案

您可以使用 animate() 函数来实现。

var btn = document.querySelector("input");
btn.addEventListener("click", updateBtn);

function updateBtn() {
$el = $("<div>", {
id: "middle-item",
text: "New element",
style: "display: none"
});
$("#middle")
.append($el)
.animate({ height: "+=" + $el.height() }, 200, function() {
$el.fadeIn(100);
});
}
/* You don't need to define a `css transition` anymore. */
#top, #middle, #bottom {
font-size: 1.5em;
border: 2px solid black;
margin: 0.3em
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="top">
Top of the page
</div>

<div id="middle">

</div>

<div id="bottom">
<form>
<input type="button" value="Add an element">
</form>
End of the page
</div>

关于javascript - 插入新元素时如何平滑移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57635800/

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