2016-05-26 8 views
1

Ich muss dem .dropdown-div einen Ease-Effekt hinzufügen, wenn es mit jQuery sichtbar wird, aber ich würde es auch gerne mit CSS machen. Irgendwelche Ideen? Dank im Voraus :)Mit jQuery den Effekt "easy out" hinzufügen

$('.btn').bind('click', function(){ 
 
\t $(this).parent().next('.dropdown').toggleClass('open'); 
 
});
.top, 
 
.bottom { 
 
    background: #333; 
 
    height: 50px; 
 
} 
 
.dropdown { 
 
    height: 50px; 
 
    position: absolute; 
 
    color: black; 
 
    visibility: hidden; 
 
} 
 
.open { 
 
    position: relative; 
 
    visibility: visible; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="top"> 
 
    <button class="btn">Show content</button> 
 
</div> 
 
<div class="dropdown"> 
 
    <p>Hidden content</p> 
 
</div> 
 
<div class="bottom"> 
 
    
 
</div>

https://jsfiddle.net/319zd1sg/1/

+0

Suchen Sie dieser Suchbegriffe? https://jsfiddle.net/319zd1sg/2/ –

+0

Ihr Code lässt sich jedoch nicht schön umschalten. – rsn

+0

geben .slideDown ('langsam'); ein gehen. – David

Antwort

0

1 Sekunden Verzögerung in (https://jsfiddle.net/nh2fj27g/1/).

$('.btn').bind('click', function(){ 
var $dropdown = $(this).parent().next('.dropdown'); 
$dropdown.hasClass('open') ? $dropdown.toggleClass('open').animate({opacity: 0},1000) : $dropdown.css({opacity: 0}).toggleClass('open').animate({opacity: 1},1000); 

});

0

Hoffe, das hilft.

$('.btn').bind('click', function() { 
 
    $('#drop').slideDown('slow'); 
 
});
.top, 
 
.bottom { 
 
    background: #333; 
 
    height: 50px; 
 
} 
 
.dropdown { 
 
    display: block; 
 
    color: black; 
 
    width: 100%; 
 
} 
 
.drop { 
 
    display: none; 
 
} 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="top"> 
 
    <button class="btn">Show content</button> 
 
</div> 
 
<div id="drop" class="drop"> 
 
    <div class="dropdown"> 
 
    <p>Hidden content</p> 
 
    </div> 
 
</div> 
 
<div class="bottom"> 
 
</div>