Button States and Triggers when Revisiting

Jan 20, 2022

I have a slide where I have a cycle made up of buttons.

When the user first gets to the slide the first button is the only one that is active because we want them to click the buttons in order.  I have triggers set up so that once the user clicks the first button it takes them to the slide layer and clicking the button also triggers the second button to switch from “Deactive” to “Normal”.  The process continues until the user is finally able to click the last button in the cycle.  The slide is also set up so that the next button will only work when the state of all the buttons has turned to “Visited”.

The issue we’re experiencing is if the user is on the 3th button and they want to go back and revisit the content on the first button, re-clicking the first button will change the state of the second button from “Visited” back to “Normal”. In order to advance to the next slide the state of all the buttons needs to be “Visited” so this causes the user to have to re-click all of the other buttons again to get them to a state of “Visited”.

The state of the slide is set to “Resume to Saved State” upon revisiting, but that doesn’t help me when it comes to the buttons.  Does anyone have any thoughts on how I can set up this slide so that if a user re-clicks a previous button it doesn’t change a “Visited” state back to “Normal”? 

I've attached some screenshots to hopefully help you see the buttons and states.

2 Replies
Judy Nollet

Hi, Angela,

You could use variables and conditions to control the state changes.

  • Create a T/F variable with an initial value of False for each step in the cycle. 
  • For the trigger that changes the subsequent button to Normal, add a condition so it will only do that when the associated variable = False. 
  • After each of those triggers, add a trigger that adjusts the associated variable to True. That will prevent the trigger from changing the Visited button back to Normal if the user reclicks a previous button.
Dave LeFevre

If I'm understanding your question correctly, I do this all the time. The built-in Visited state doesn't work for this purpose for the reasons you describe. I use a custom state (often "Done" but use whatever you like) which is triggered by whatever event you want to use (last slide visited, interaction completed, etc.). The button stays in that state no matter how many times it is clicked. Then you have a trigger on the page that checks that all buttons are in the "Done" state to register completion.