Simultaneous versus queued effects
The .animate()
method, as we've just discovered, is very useful for creating simultaneous effects affecting a particular set of elements. There may be times, however, when we want to queue our effects, having them occur one after the other.
Working with a single set of elements
When applying multiple effects to the same set of elements, queuing
is easily achieved by chaining those effects. To demonstrate this queuing, we'll repeat Listing 4.17, by moving the Text Size box to the right, increasing its height, and increasing its border width. This time, however, we perform the three effects sequentially, simply by placing each in its own .animate()
method and chaining the three together:
$(document).ready(function() { $('div.label').click(function() { var paraWidth = $('div.speech p').outerWidth(); var $switcher = $(this).parent(); var switcherWidth = $switcher.outerWidth(); $switcher .css({position: 'relative'}) .animate({left...