Blog Post

Articles
3 MIN READ

How to Create a Cool Menu Button Nesting Animation Effect with Storyline

joshstoner's avatar
joshstoner
Community Member
10 years ago

One thing I love about Articulate Storyline is the extensibility of its built-in animations. I recently created a navigation example with a menu button that animates to reveal more choices. The GIF below gives you a feel for the effect, but you can also take a closer look at the example. I thought I’d share a tutorial on how I built it.

The menu button presents a nice, subtle effect when a user interacts with it.

Creating the Shapes

To begin, I created the overall design of the circles, colors, labels, and shadows. The menu icon has a plus sign in the center, with each of the three menu items showing the numbers 1, 2, and 3, respectively. We’ll link to specific layers in a minute.

Once I was satisfied with the designs, I duplicated the menu icon (“+”) and removed all design aspects such as fill and shadow. This new invisible shape will act as the base object for the menu items and will be the animation source for the three buttons. 

 

Here's a useful tip: When it comes to stacking objects on the screen, I like to label the objects on the timeline so I can identify and select objects more easily later on. 

Nest Objects Within a State

After I created the invisible base object, I cut and pasted the three menu buttons into the invisible menu animation circle’s “normal” state. 

With a click on DONE EDITING STATES, I linked my objects together as one group, making it easy to apply entrance and exit animations, as well as growing and shrinking effects, to the invisible menu animation shape. I also set its initial state to “hidden,” so the animation does not automatically occur.

Now here’s a cool thing: even though I’ve only applied the animation effect to the invisible base object, Storyline automatically includes the effect on the nested objects, treating them as part of the base object. 

Let’s switch over to the timeline to look at the adjustments I made there. First, I shortened the timeline so its length does not drive the duration of the exit animation effect—if it did, the three buttons would disappear when the timeline ended! Additionally, in order to make the animation appear and disappear behind the menu icon rather than in front of it, I placed the shape containing the animation below the icon on the timeline.

TIP: For a slower animation, like the standard 0.75-second animation setting, ensure the timeline is set to at least 0.75 seconds in length and create an invisible shape on top of the icon that eventually disappears, but prevents users from clicking the icon prior to the end of the timeline. 

Create a Variable

Next, I needed to enable the animation effect based on the user’s interaction, so I created a few triggers to execute based on the value of a single variable. The variable I created is a true/false variable with a default value of false. In its default state, the menu items will exit or not be visible; when true, the menu items will enter.

Triggers and Hotspots

My first trigger toggles the value of the variable between true and false based on whether the learner clicked the menu item to activate the entrance or exit animations.

 

Then I created two other variables that change the state of the invisible menu animation shape to a “normal” or “hidden” state, which makes the actual menu animation occur.

Now it’s time to link the three exposed menu items to each of their corresponding layers. I created an additional layer containing only hotspots atop the location of the menu items, and linked each of the hotspots to their appropriate layer.

To wrap it all up, I needed to add two triggers to the base layer. One trigger will show the hotspot layer and the other will hide the hotspot layer based on the toggling of the variable.

 

That's it! My example already had some additional layers with entrance effects on objects that appear to show the layer’s presence, but that’s the only difference.

Now that you’ve seen the basics of nesting shapes with animations and adding triggers and variables, you can use animations in fun ways within your courses. Try some in your next project!

Published 10 years ago
Version 1.0
  • sabrinapinto's avatar
    sabrinapinto
    Community Member
    Thank you for sharing! The only thing I am unable to get to work are the layers to appear. I can only click on menu 1 and layer 1 shows up but not on 2 or 3.
    Don't know what I might be doing wrong.
    • joshstoner's avatar
      joshstoner
      Community Member
      When using the hotspots, ensure that you do not have layers hiding other slide layers under the layer properties, which will hide your hotspot layer.

      Or if you use transparent shapes as hotspots on the base layer, you should ensure that "prevent the user from clicking on the base layer" is not checked.
  • KyleTrail's avatar
    KyleTrail
    Community Member
    I like this menu system. Sharp stuff that reminds me of my personal website (http://www.kyletrail.com)
  • shinashani's avatar
    shinashani
    Community Member
    its very beautiful but i cant undrestand any body can present video of this job
    thanku
  • Hi Josh. I don't know if you're still doing this, but for some reason something odd is happening when I try this out on my own. One of my menu items appears on the wrong side of the screen after I follow the step where I nest the three items in the "Normal" state of the invisible "+" button. Any thoughts on why this would happen? Thanks!