javascript - 动画 jquery 切换类

标签 javascript jquery css jquery-animate

想知道是否有人可以告诉我如何制作动画以便逐渐显示答案?我在下面添加了我的所有代码。非常感谢任何有助于使这项工作正常进行的帮助。

<div class="q-a-set">
<div class="licensing-question" id="q_1">
<i class="fa fa-caret-square-o-down" aria-label="Answer"></i> <span>Do I need to pay?</span>
</div>
<div class="licensing-answer-closed" id="a1"><span class="licensing-answer">Yes</span></div>
</div>

.licensing-question{
        font-size: 2.2em;
        font-weight: 700;
        font-family: 'Source Sans Pro', sans-serif;
        color: #a8a8a8;
        cursor: pointer;
        line-height: 1.2em;
        margin: 0;
        padding: 0;
        display: inline;

    }
    .licensing-answer-closed{
        height: 0;
        visibility: hidden;
    }
    .licensing-answer{
        color: #222222;
        font-size: 1.8em;

    }

var showAnswerBtn = $(".licensing-question");
var caret = showAnswerBtn.find('.fa');


showAnswerBtn.click(function () {
    //alert(caret);
    event.preventDefault();
    var target = this.id.split('_');
    var id = "a" + target[1];

    $("#" + id).toggleClass('licensing-answer-closed');
    $(caret).toggleClass('fa-caret-square-o-up');

});

最佳答案

您可以使用带有 opacity 的 css transition。我向您的 HTML 添加了一个类,因此我可以使用类选择器来建立 transition

var showAnswerBtn = $(".licensing-question");
var caret = showAnswerBtn.find(".fa");

showAnswerBtn.click(function() {
  //alert(caret);
  event.preventDefault();
  var target = this.id.split("_");
  var id = "a" + target[1];

  $("#" + id).toggleClass("licensing-answer-closed");
  $(caret).toggleClass("fa-caret-square-o-up");
});
.licensing-question {
  font-size: 2.2em;
  font-weight: 700;
  font-family: 'Source Sans Pro', sans-serif;
  color: #a8a8a8;
  cursor: pointer;
  line-height: 1.2em;
  margin: 0;
  padding: 0;
  display: inline;
}
.licensing-answer-closed {
  height: 0;
  opacity: 0;
}
.licensing-answer {
  color: #222222;
  font-size: 1.8em;
}
.licensing-answer-parent {
  transition: opacity 1s;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="q-a-set">
  <div class="licensing-question" id="q_1">
    <i class="fa fa-caret-square-o-down" aria-label="Answer"></i> <span>Do I need to pay?</span>
  </div>
  <div class="licensing-answer-closed licensing-answer-parent" id="a1"><span class="licensing-answer">Yes</span></div>
</div>

关于javascript - 动画 jquery 切换类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44680893/

相关文章:

javascript - 将值转换为 json/object 并更新条目

jquery - 如何在jquery中选择所选元素(网格样式)下方的元素(div)

javascript - 如何在 FullCalendar 的 Event Click 上突出显示整个事件

html - 如何在 HTML 和 CSS 中删除图像和资源管理器侧面之间的 "whitespace"

javascript - 如何让 Bootstrap 模式对话框慢慢消失

javascript - HTML5 视频当前时间未在 Chrome 中更新

javascript - 什么是真正的多维数组?

php - 如何从 session PHP 获取 jQuery ID?

javascript - 如何使用 iframe 在您的网站中显示 keek 视频

css - 如何显示可缩放 SVG 矩形内的 SVG 元素的工具提示?