【发布时间】:2020-12-30 02:05:56
【问题描述】:
我试图理解为什么一旦关闭类,类转换的动画就不会播放。
这是我的codepen
$("div").click(function() {
$(this).toggleClass("center");
});
div {
width: 100%;
background-color: tomato;
margin: 10px;
padding: 20px;
font-family: Montserrat;
text-transform: uppercase;
transition: all 1s linear;
top: 0%;
}
.center {
position: absolute;
background: red;
top: 50%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<nav>
<div>some </div>
<div>some other </div>
</nav>
当我点击一个 DIV 时,我希望它改变它的位置到屏幕的中心,并为这个过渡设置动画,这很有效,但是一旦我切换了类,这个 div 就会“捕捉”回原来的样子位置。为什么它没有动画回来?有办法吗?
谢谢
【问题讨论】:
-
您可能想改用
.addClass()和.removeClass()。这样,您可以使用两个类并删除一个 CSS 类名称并将其替换为另一个,这样您就可以将 DIV 动画化回原来的起点。