jquery - 如何平滑地淡化元素的高度?
问题描述
我尝试在点击时淡出我的元素。但问题是,我想要它流畅,但高度在褪色后有点跳跃。有没有像垂直平滑褪色的选项?
这是一个堆栈片段:
$(".collapse-content").each(function() {
if (!$(this).closest(".collapse-head").hasClass("active")) {
$(this).hide();
}
});
$('.collapse-head').hover(
function() {
$(this).find("blockquote").css({
"color": "#000"
});
},
function() {
$(this).find("blockquote").css({
"color": "#777"
});
}
);
$(".collapse-head").click(function() {
$(".collapse-head").removeClass("active");
$(this).addClass("active");
$(".collapse-content").fadeOut("slow");
$(this).find(".collapse-content").fadeIn("slow");
});
.collapse-head {
cursor: pointer;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="section-text mb-50 mb-sm-20">
<div class="row collapse-head active" data-id="1">
<div class="col-md-4">
</div>
<div class="col-md-4 collapse-title">
<blockquote>
<p>
A
</p>
</blockquote>
</div>
<div id="1" class=" col-md-4 col-sm-6 mb-sm-50 mb-xs-30 collapse-content" data-text="">
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea
rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
</div>
</div>
<div class="row collapse-head" style="margin-top:20px" data-id="2">
<div class="col-md-4">
</div>
<div class="col-md-4 collapse-title">
<blockquote>
<p>
B
</p>
</blockquote>
</div>
<div id="2" class="col-md-4 col-sm-6 mb-sm-50 mb-xs-30 collapse-content" data-text="">
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea
rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
</div>
</div>
<div class="row collapse-head" style="margin-top:20px" data-id="3">
<div class="col-md-4">
</div>
<div class="col-md-4 collapse-title">
<blockquote>
<p>
C
</p>
</blockquote>
</div>
<div id="3" class="col-md-4 col-sm-6 mb-sm-50 mb-xs-30 collapse-content" data-text="">
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea
rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
</div>
</div>
</div>
也是一个小提琴:https ://jsfiddle.net/8nqsdkvg/
解决方案
@freedomn-m 说的是真的,但我认为问题出在.collapse content
. 这个怎么样?
$(".collapse-head").click(function() {
$(".collapse-head").removeClass("active");
$(".collapse-content").slideUp(1400);
$(this).addClass("active");
$(".collapse-content").fadeOut(1400);
$(this).find(".collapse-content").fadeIn(1400);
});
我slideUp
为.collapse-content
$(".collapse-content").slideUp(1400);
演示在这里
推荐阅读
- python - 将 R 代码更改为 Python 代码,逻辑回归的最大可能性
- mapbox - 等效于没有 Mapbox GL Map 实例的 map.cameraForBounds
- reactjs - 导航离开时反应状态恢复到以前的状态
- reactjs - React + D3 + Force-Directed Tree + 可调链接强度
- python - python if 声明中的默认比较是什么?
- javascript - 在 Javascript 中访问 PHP 会话名称
- java - SpringBootTest MockMvc:andExpect status not throwing
- reactjs - React 在页面完全渲染之前显示未完成的元素
- html - 如何修复页脚使其显示在侧边栏下方?
- python-3.x - 在python中读取文件使用不同的方法