Creating flexible, user-friendly navigation is essential in modern e-learning development. If you’re building your course in Articulate Storyline 360, you may already know that the default linear navigation often falls short for non-linear learning paths, branching scenarios, or custom menus.
Click Preview to watch a step-by-step tutorial on How to Set Unique Slide IDs and Enable JavaScript Navigation in Articulate Storyline 360.
In this blog, we will show you how to set unique slide IDs and implement custom JavaScript-based navigation in Storyline 360, giving you greater control over how learners move through your content.
About Articulate Storyline 360
Articulate Storyline 360 is one of the most popular eLearning authoring tools used by eLearning designers and eLearning providers worldwide to create interactive, engaging custom eLearning courses. As part of the Articulate 360 suite, Storyline 360 is known for its powerful interactivity, flexible slide-based interface, and robust support for responsive, SCORM-compliant eLearning content.
Key Features of Storyline 360:
Storyline 360 allows course creators to:
✔ Build highly interactive and media-rich eLearning experiences
✔ Use triggers, variables, and layers to control learner interaction
✔ Create custom quizzes, branching scenarios, and gamified content
✔ Export content in multiple formats, including SCORM 1.2, SCORM 2004, xAPI (Tin Can), and HTML5
✔ Publish directly to Review 360 for real-time feedback and team collaboration
JavaScript Support Makes Articulate Storyline 360 Perfect for Advanced eLearning
One of the most powerful features of Articulate Storyline 360 is its built-in support for JavaScript, which allows course developers to go beyond standard interactivity. With JavaScript, you can implement dynamic navigation, enable real-time data tracking, and create personalized learning experiences tailored to individual learners’ needs.
Step-by-Step: Setting Up Unique Slide IDs in Storyline 360
Step 1: Open Your Project and Access Slide Master
✔ Launch your Storyline 360 project.
✔ From the top ribbon, click View > Slide Master.
✔ This gives you a central place to control behaviors across multiple slides and layouts.
Step 2: Create Slide ID Variable
You’ll need a variable to store the unique ID of each slide.
✔ Go to Variables > Click +
✔ Create a new Text variable named: slide.id
This variable will be updated with a unique value (e.g., slide_intro, slide_quiz1, etc.) each time a new slide is loaded.
Step 3: Assign Unique IDs to Each Slide
For each slide or layout:
Add a Trigger:
✔ Trigger Action: Adjust variable slide.id
✔ Value: “slide_welcome”, “slide_menu”, etc.
✔ When: Timeline starts
This ensures every slide has a unique, identifiable reference.
Step 4: Create a Navigation Trigger Variable
✔ Next, create a Number variable named: JumpToSlide.
This variable will be used to control navigation through JavaScript.
Step 5: Set Button Actions on the Slide Master
Now assign values to your buttons that correspond to specific slides:
✔ Button 1 → Set JumpToSlide = 0
✔ Button 2 → Set JumpToSlide = 1
✔ And so on…
These numbers will match the index of your slide ID list in the JavaScript code.
Step 6: Add a JavaScript Trigger for Navigation
On your Slide Master, create a trigger to run JavaScript when JumpToSlide changes.
Use this JavaScript script:
var idList = [“6XsRYr98ERZ”, “6OeymDUTdyp”, “6g6O2ngUya3”, “6cUWADLFfdl”, “6Ha68Y4P6Nx”, “5kZqpnMY0lD”];
var choice = GetPlayer().GetVar(“btnNum”);
GetPlayer().JumpToSlide(idList[choice]);
Note: Make sure slide IDs in the JavaScript match the ones assigned in Step 3.
Step 7: Test Your Navigation in Review 360
✔ Publish the course to Review 360
✔ Test all navigation buttons
✔ Make sure each slide jump behaves as expected
Making JavaScript Work in SCORM-Enabled LMS
When publishing to SCORM, JavaScript sometimes fails due to LMS restrictions. Here’s a quick fix:
Step 8: Edit story.html Manually
After publishing your course:
✔ Go to your published output folder.
✔ Open story.html in a code editor like Notepad++ or Brackets.
✔ Scroll to the bottom and find the closing tag.
✔ Paste the following HTML script just before that tag:
HTML script:
window.autoSpider = true;
✔ Save the files
✔ Zip your course folder and upload it to your LMS
✔ Test the navigation again in the LMS environment
Looking for a Learning Management System (LMS) Solution?
We offer Learning Management System (LMS) solutions tailored to your organization’s unique training, compliance, and performance management goals.
Whether you’re a corporate organization, educational institution, or non-profit, we’re here to help you deliver engaging, scalable, and measurable learning experiences.
Why Use Unique Slide IDs and JavaScript Navigation in Storyline 360?
With unique slide IDs and custom JavaScript navigation, you can:
✔ Jump to specific slides based on user input
✔ Create dynamic menus
✔ Build personalized learning paths
✔ Improve usability in branched scenarios
This method also ensures consistency across slides and works well when paired with Slide Masters.
Best Use Cases for JavaScript Navigation in Storyline 360 Courses
✔ Corporate compliance training
✔ Role-based onboarding programs
✔ Scenario-based learning
✔ Product demos and simulations
✔ Gamified course flows with scoring logic
Whether you’re building a custom eLearning solution or optimizing an existing one, using JavaScript navigation and slide ID variables helps create more engaging, scalable, and maintainable courses.
Summary
Using unique slide IDs and JavaScript-based navigation in Articulate Storyline 360 gives you a level of control that built-in triggers can’t match. Whether you’re building a personalized learning path, a modular curriculum, or an interactive assessment, this approach lets you:
✔ Jump to specific slides dynamically
✔ Manage navigation centrally via variables
Frequently Asked Questions (FAQs)
Q1. What is JavaScript navigation in Storyline 360?
A. JavaScript navigation lets developers use JavaScript code to jump to specific slides, enabling advanced control beyond default triggers and buttons.
Q2. Where can you add custom JavaScript in Storyline 360?
A. Custom JavaScript can be added via Triggers in the Slide Master or on specific slides, typically using the “Execute JavaScript” action on variable changes or user interactions.
Q3. Why use Articulate Storyline 360 for corporate training solutions?
A. Storyline 360 offers robust features for building interactive, responsive, and SCORM-compliant training modules tailored for enterprise use, employee onboarding, and compliance training.
For more information, please visit our Custom eLearning Development Services page.
Q4. What are the benefits of using Slide Master in Storyline 360?
A. The Slide Master in Articulate Storyline 360 allows you to define reusable layouts, global triggers, and consistent design elements across your course. Here are the key benefits:
✔ Consistency: Maintain a uniform look and behavior across all slides.
✔ Efficiency: Save time by applying design changes and triggers globally rather than editing each slide individually.
✔ Global Triggers: Set navigation logic (like JavaScript triggers or variable changes) once and apply it to all slides using that master.
✔ Easier Maintenance: Make updates in one place instead of modifying each slide manually.
✔ Professional Design: Use branded templates, headers, footers, and placeholders consistently throughout the course.
Using Slide Master is especially powerful when building large or complex e-learning modules with custom navigation, interactions, or adaptive paths.
Q5. What is JavaScript?
A. JavaScript is a programming language used to create interactive features on websites and web-based applications, including e-learning courses created in tools like Storyline 360.
In the context of Articulate Storyline 360, JavaScript is used to:
✔ Control navigation (e.g., jump to a specific slide)
✔ Read/write variables
✔ Track user interactions
✔ Communicate with external systems (like an LMS or database)
Note: JavaScript in Storyline must be used carefully, especially when publishing to SCORM or LMS platforms, as some restrict or block its execution.