【问题标题】:2 Sliding Divs horizontally Jquery2个水平滑动Divs Jquery
【发布时间】:2015-05-15 13:50:34
【问题描述】:

我想做类似this.的东西

容器在某个点滑出的地方。我想象的方式是2个div。 1个正面和1个背面。当两个 div 都出来时,整个容器仍然是集中的。

我什至不知道如何开始。可以得到一些指南开始吗?

【问题讨论】:

    标签: jquery jquery-ui slide


    【解决方案1】:

    这是执行此操作的一种方法。请注意,我使用的是 CSS 过渡属性,IE 9 及以下版本的其他浏览器不支持该属性。

    $("button").click(function() {
      $(".container").toggleClass("opened");
    });
    div {
      width: 200px;
      height: 100px;
    }
    
    .container {
      position: absolute;
      margin-left: -100px;
      margin-top: -50px;
      left: 50%;
      top: 50%;
      transition: margin-left .2s linear;
    }
    
    .container.opened {
      margin-left: -200px;
    }
    
    .back {
      background: red;
      transition: margin-left .2s linear;
    }
    
    .container.opened .back {
      margin-left: 200px;
    }
    
    .front {
      background: green;
      margin-top: -100px;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="container">
      <div class="back"></div>
      <div class="front"></div>
    </div>
    <button type="button">Push me!</button>

    另一种方法是使用 jQuery Animate,而不是将 open 类添加到 div.back

    $( ".back" ).animate({
        margin-left: 200px,
    }, 200,
    function() {
        // Animation complete.
    });
    

    【讨论】:

    • 看起来不错,但是当打开 .back 时,我还需要集中容器 div。我想我可能知道如何解决这个问题。谢谢蒂姆!
    • 我已根据您的评论编辑了我的代码。请随时将我的答案标记为已接受:)
    猜你喜欢
    • 1970-01-01
    • 2015-03-20
    • 2014-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多