Jquery animate 不适用于变换属性
Posted
技术标签:
【中文标题】Jquery animate 不适用于变换属性【英文标题】:Jquery animate doesn't work with transform property 【发布时间】:2021-04-12 17:51:43 【问题描述】:所以当我尝试使用 Jquery animate
函数时,它根本不起作用。我尝试了每一件事,但仍然无法正常工作。这是 html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(".show").click(function ()
$(".error-box").animate(
transform: "translateX(0%)",
, 500);
);
</script>
<style>
.error-box
transform: translateX(-100%);
</style>
</head>
<body>
<div class="error-box">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore,
excepturi?
</div>
<button class="show">Göster</button>
</body>
</html>
【问题讨论】:
animate-element-transform-rotate 【参考方案1】:我建议通过添加具有规则transform: translateX(0%)
的类来使用动画。像这样:
$(".error-box").addClass('animate');
将动画延迟 transition: .5s
添加到 .error-box
并将此类添加到您的 css:
.error-box.animate
transform: translateX(0%);
结果,你会得到想要的结果。
$(".show").click(function ()
$(".error-box").addClass('animate');
);
.error-box
transform: translateX(-100%);
transition: .5s;
.error-box.animate
transform: translateX(0%);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<div class="error-box">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore, excepturi?
</div>
<button class="show">Göster</button>
【讨论】:
【参考方案2】:也许您可以将 CSS 用于动画?这正是 jQuery 所做的 :)
$(".show").click(function ()
$(".error-box").css(
transform: "translateX(0%)",
);
);
.error-box
border:1px solid #ccc;
padding:2px 4px;
margin-bottom:10px;
position:relative;
transform:translateX(-110%);
transition:all 500ms;
display:inline-block;
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="error-box">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore,
excepturi?
</div>
<br>
<button class="show">Göster</button>
【讨论】:
以上是关于Jquery animate 不适用于变换属性的主要内容,如果未能解决你的问题,请参考以下文章