【问题标题】:How to toggle Maximize/Minimize using jquery & animate.css?如何使用 jquery 和 animate.css 切换最大化/最小化?
【发布时间】:2017-08-04 18:16:36
【问题描述】:

我有两列和一个居中的按钮,我尝试使用 jquery 和 animate.css 使按钮切换(最大化/最小化)两列。

看起来很容易制作,但效果不佳,我只能将其最小化一次,我只想制作一个切换开关。 这是一个例子:

HTML:

    <a class="btn btn-default"> Maximize/Minimize <i class="fa fa-chevron-up" aria-hidden="true"></i></a>
<div class="col-xs-6">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eius ducimus unde quasi dolorum necessitatibus voluptates perferendis consequuntur alias inventore quisquam distinctio sunt tempora quam doloremque, molestias praesentium voluptatem, sed optio.</div>
<div class="col-xs-6">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus necessitatibus excepturi ut dolorum placeat ducimus accusamus corrupti dicta mollitia enim dolore impedit pariatur, nobis dignissimos ad, magni distinctio voluptate assumenda.</div>

CSS:

    body{
  position: relative;
}
.btn{
  display:block;
}


  @keyframes slideOutDown {
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 200px, 0);  // distance of the animation
  };
  
    @keyframes slideOutUp {
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, -200px, 0);  // distance of the animation
  }

JS:

   $(".btn").click(function(){
  $(".col-xs-6 , .btn").addClass('animated slideOutDown');
  $(".btn i").removeClass('fa-chevron-up');
  $(".btn i").addClass('fa-chevron-down');
    });

Here is jsfiddle example

我希望在我最小化它之后能够再次最大化 slideOutUp 动画。

非常感谢您的帮助。

【问题讨论】:

    标签: javascript jquery html css animation


    【解决方案1】:

    您可以在此处使用toggleClass()。目前,您正在单击添加或删除一些类,在下一次单击中您将不得不执行相反的操作,您可以定义一个 if else 条件来检查何时执行哪些类,或者您可以简单地使用toggleClass()

     $(".btn").click(function(){
          $(".col-xs-6 , .btn").toggleClass('animated slideOutDown');
          $(".btn i").toggleClass('fa-chevron-up');
          $(".btn i").toggleClass('fa-chevron-down');
    
      });
    

    【讨论】:

    • 谢谢,但我想用slideOutUp 动画最大化它。
    • 我没看清楚,你现在的代码不是最大化了吗?
    • 您的代码在没有动画的情况下最大化列,但我希望它们使用slideOutUp 最大化,我认为toggleClass() 不适合此功能:/
    【解决方案2】:
    $(".btn").click(function() {
    
        $(".col-xs-6 , .btn").toggleClass("animated slideOutDown");
    
        $(".btn i").toggleClass("fa-chevron-up fa-chevron-down");
    
        $(".col-xs-6 , .btn").addClass("animated slideInUp");
    
    });
    

    【讨论】:

      猜你喜欢
      • 2013-04-16
      • 1970-01-01
      • 2021-10-31
      • 2012-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-11
      相关资源
      最近更新 更多