How the Navigation Bar Movie Works
Go to the folder titled CH03-Files/CH03-Originals on your CD-ROM, grab the file titled hz_Nav_Bar_new.fla, and place a copy in your working folder. Open it up in the Flash 5 application and test the movie. You'll see that the navigation bar is constructed in a sliding bar format, so you can scroll to the right and left to view more main menu items. This layout will allow you to list many main menu items without filling the entire site with lists of options. If you roll over a main menu item, the text turns from white to blue and a light gray box appears behind it. When you click on a main menu item, a sub-menu pops up in an incremental animation. This sub-menu structure provides you with a clean, simple, and efficient way to organize many items within one category. When you roll over any of the sub-menu items, the boxes turn from blue to green and an arrow appears next to the text. In your finished movie, when you click on these categories, a script will load the appropriate movie. In the example, that option isn't functional yet. The sub-menu will disappear when you roll out of the category. You will also note that if you roll over the Drag button, the button reverses its type to blue with a lighter gray background. If you click and drag this button, the entire menu bar will follow your cursor, allowing your viewer to place it anywhere on the Stage during run time.
Return to the hz_Nav_Bar_new.fla that should still be open in the Flash application and take a look at the main Timeline. This movie has a single scene with a single keyframe containing a Movie Clip that is several layers deep. Open up the Movie Clip by double-clicking the navigation bar at the bottom of the Stage. Once you're inside, take the play head and scrub across the Timeline. You'll see the main menu buttons swing from right to left and vice versa on the Stage below.
It's easier to visualize how these elements work together if we start from the bottom and work our way up through the layers. The very bottom layer of the Movie Clip contains the outline of the navigation bar itself, which is simply a static graphic symbol. The two layers above are grouped together as a Mask layer, appropriately named Mask, as well as a Masked layer named Scroll. Scroll is comprised of a graphic symbol made up of Movie Clips in a single row that contain main menu buttons. The Mask layer masks off all but the inside boundaries of the navigation bar outline so that when the main menu buttons tween from right to left, only the buttons inside the perimeter of the navigation bar are visible. Above the Mask layer is the Buttons layer. This layer contains the Scroll buttons that enable the menu to scroll back and forth. The Scroll buttons simply contain scripts that play a certain frame inside the Movie Clip Timeline. The Drag Handle layer contains the button that enables the user to drag the bar at run time. The very top layer, called Labels, contains a series of blank keyframes that exist for no other purpose than to label sections of the Timeline. The names of the labels in the Top layer make it easy to recognize the position of the main menu buttons at each stop action contained in the Actions layer below.
Figure 3.1 Timeline of the Movie Clip hn_NavBarScroller.
Now that you've seen how the scrolling motion is achieved, let's move on to the sub-menu structure. While still inside the hn_NavBarScroller Timeline, scrub the play head back to frame 1, double-click the Home button that appears on the Stage. You'll now find yourself in the Timeline for the symbol titled hn_menu. The hn_menu graphic symbol contains one Movie Clip for every main menu item. Roll your cursor to the Stage area and double-click the Home button again. You'll see that you are now in the Timeline for the Movie Clip hn_home_mov. You could, of course, view these symbols straight from the Library, but it's easier to see how they function as a whole if viewed in the context of the larger Timeline. When you've entered the hn_home_mov Movie Clip, you'll see four layers with two keyframes each.
Figure 3.2 Timeline of the Movie Clip hn_home_mov.
The Actions layer that contains the scripts for this Timeline starts at the top. Both keyframes contain a stop() action; however, the second keyframe also contains the label Up. Below that is the Buttons layer that contains the main menu item button. The first keyframe on this layer contains an instance of the Home button with a script that sends the play head to the frame labeled Up. The second keyframe contains a Home button instance, but doesn't have a script attached to it. Underneath the Buttons layer is the layer titled Sub Menu. The first keyframe in the Sub Menu layer is blank, but the second keyframe contains the Movie Clip that creates the sub-menu button animation. You'll see the first category in the sub-menu when you scrub over the second keyframe. In this case the button on the Stage reads "Media."
At the bottom of the Movie Clip is a layer called rolloffTarget. This layer contains an invisible button that covers the perimeter of the sub-menu and main menu buttons. It contains the script:
on (rollOver) { gotoAndStop (1); }
This script sends the play head back to the "off" position of the first frame of this Movie Clip, thus causing the sub-menu to disappear.
Now let's see how the Sub-Menu Movie Clip animates. Accessing the Sub-Menu Movie Clip is easier if you lock down the other layers, and then double-click the Stage over the sub-menu button in the second keyframe. You'll find yourself in the Timeline of the Movie Clip named hn_home_sub because we started with the Home main menu item and burrowed down. This Movie Clip has four layers and two keyframes. The top layer is titled Actions and contains a stop() action on the second keyframe. The next layer is titled Images Button, with a blank first keyframe; the second keyframe contains a button and text label for the button that will load the Images movie. Below that layer is the layer named Media Button, which contains the Media button and text label in both keyframes. The bottom layer contains an invisible button that forms the roll off perimeter. The sub-menu buttons display in a stair step animation because the Media button appears in both frames, but the Images button doesn't appear until frame 2. There's a stop() action on frame 2 so the play head will remain there. As long as the cursor doesn't leave the perimeter established by the invisible button in the hn_home_mov Clip, the sub-menu will stay popped up on the Stage. When the cursor does leave the invisible button perimeter, the play head is sent back to a frame that no longer contains the Sub-Menu Movie Clip and the sub-menu disappears.
Figure 3.3 Timeline of the Movie Clip hn_home_sub showing the animation structure.