Forum Discussion
Delay Visited State to show star icon + 1
Hi everyone! I am looking for a way to solve this issue in Storyline: I have to delay 2 seconds for the learner to see the star as the visited state of a button. I know an alternative solution is to create another state called completed but the triggers do not fire once I create it as part of a conditional variable: The learner can only see the completed state once getting to the correct layer in the next slide. The link to see the issue is here: Challenge
I'd love to read your comments or insights on how to solve this, thank you.
2 Replies
- JudyNolletSuper Hero
When an object has a Visited state, it will always change to Visited as soon as it is clicked. That's built-in functionality.
If you want to indicate which buttons have been clicked based on whether the user has completed content on another slide, you need to use variables and conditional triggers. Here are a few notes:
- A "when variable changes" trigger will only run if the variable changes on the same slide as the trigger.
- A "when the timeline starts on this slide" trigger will run every time the user visits a slide. That's true even if the slide is set to "Resume saved state." So this "when" is useful when you want something to happen when a user returns to a slide. Use conditions to control whether the trigger's action will be performed.
These resources might help:
- TIP: Create a Custom Menu Slide | Articulate - Community
- The Value of Variables | Articulate - Community
- Storyline 360: Working with Triggers
I also highly recommend that you give all objects meaningful names. That makes development and troubleshooting easier. Personally, I don't bother trying to troubleshoot slides with default names...
- NedimCommunity Member
If I were building this, I would explore a few different ways to 'trick' the default behavior of the "Visited" state so it only fires after a specific delay. Here are the two options:
Option 1: The JavaScript Approach (Cleanest) Using the Storyline JavaScript API, we can trigger the state change after a set time without cluttering the project with extra triggers. It’s highly efficient and allows for a precise 3-second delay that doesn't feel 'laggy.'
Option 2: The Motion Path Workaround (No-Code) If you prefer to stay within native triggers, you can use a hidden object on a 3-second motion path.
- Create a trigger to change the button state to "Normal" the moment it's clicked (to override the instant "Visited" state).
- Start the hidden object's motion path on that same click.
- Add a final trigger to change the button to Visited only when that motion path completes.
Related Content
- 8 months ago
- 10 months ago