jQuery callback under callback
by OmShiv
HTML
<div class="slideshow">
<div id="a">A</div>
<div id="b">B</div>
<div id="c">C</div>
</div>
CSS
.slideshow div {
padding: 50px;
border: 1px solid green;
background: #9FC;
display: none;
/* extra */
width: 20px;
margin: 10% auto;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
JavaScript
function constantAnimate(time, delay, func) {
$('#a').fadeIn(time, function() {
$(this).delay(delay).fadeOut(time, function() {
$('#b').fadeIn(time, function(){
$(this).delay(delay).fadeOut(time, function() {
$('#c').fadeIn(time, function(){
$(this).delay(delay).fadeOut(time, function() {
if (func && (typeof func == "function") ) {
func();
} else {
constantAnimate(time, delay);
}
});
});
});
});
});
});
}
constantAnimate(300, 500);