Creating a Dynamic menu in the Storyline Content

Hi All:

In flash, if I want to create a dynamic navigation menu, I would use actionscript to read an XML file. I could also do this in the Captivate player I created.

Now I'm trying to do this in Storyline and know the following exists:

  1. The frame.xml file, located in the story_content folder of the published output, will provide me the slidelink child nodes.
  2. The slideid will provide the file to play.
  3. Storyline provides me an ability to enter JavaScript in the Master Slide.
  4. I have also read this article which is a dead end for my purpose

Given the 4 points above, I would like to pursue this.

What I plan is:

  1. Find out what storyline Javascript function could be used to read the frame.xml file, crawl to the slidelink child, and read the slideid value.
  2. Create a menu layer in my Master Slide and place one dynamic button on the layer that will be replicated for each instance of teh slideid value found.
  3. See if Storyline automatically generates the navigation output.
  4. Test LMS reporting with this setup.
  5. If the previous points are successful, the rest is just styling and layout.

If anyone has been successful at doing this, it would be great if you could share.

If anyone is interested in working on this with me and you have the required skills, contact me.

Best Regards,

Dennis Hall

7 Replies
Michael McGovern

Hi Dennis!

Wondering if you have found a solution to this yet?

I am wandering the path of trying to use javascript from within Storyline to auto-generate a menu. Basically, it's the old 'we need more real estate' issue. So we will have the menu slide in as an overlay when the user clicks a custom menu button.

Building this menu from within Storyline auto-magically would save the extra steps of publishing more than once and reduce the possibility of human error.

I'll keep you posted on our success, but would be interested to know if you've had any results.



Lloyd Hill

Hi Guys,

[The comment below is now out of date. Here's a link to our most recent Storyline plugins - May 2020:]

following release of Storyline 2, several of our clients requested a dynamic menu for their courses. It took a while to create and refine. Our clients were happy with the final version. Most importantly, its quite quick to develop using it. So we set about turning our dynamic menu into a plugin for Storyline so others could use it too. The dynamic menu can be purchased on our website for a small fee which helps towards covering our development costs.

In summary, we built the dynamic menu using:

  • menu layer containing a webobject
    The webobject needs to only be added once even if you make a change to the menu
  • javascript trigger on slide start and slide end for each master layout
  • slide id variable set on each slide
  • jump to slide trigger for each slide id on the menu layer

The triggers required to run the menu are absolutely minimal. There is zero code in the storyline file aside from a few function calls. The rest of the files are external and are added to the published course by running a batch file after publishing, which takes 5 seconds to run. We've even added 24 themes for the accordion menu or you can apply your own css. The menu can be built using the template we provide or easily applied to an existing storyline file by adding the triggers.

Full details are available here: [old link - removed]