reload base slide after closing lightbox

I have a base slide with a variable set to false. An object on that slide is in the Practice state that I created for it. You click to open a lightbox and do something in there that changes the variable to true.  When you close the lightbox, the base slide does recognize the variable is now true.

I'm trying to change the state based on that variable when it returns to the base slide.  However, my trigger isn't working. The variable is now true, and I have a trigger that says:

Change state of object to PracticeDone when the timeline starts if variable is equal to true

But the state doesn't change on the base slide after the lightbox closes (even though I know the timeline restarts).  I've tried the various slide properties about loading, and none have worked.  The closest is setting it to Reset to Initial State.  It doesn't work when the lightbox closes, but if you switch to another slide and back again, it does show the object in the PracticeDone state.

I know the timeline is starting because I tested it by having something come on a few seconds late, and it is starting from the start of the timeline.  Ideas?  Is there anyway to "refresh" the base slide when the lightbox closes?

33 Replies
Dean Ichikawa

Did you ever figure out how to get this to work? I'm having the same issue. I also tried using a trigger on the base slide when the variable value changes. I'm hoping to figure something out here, I love the idea of lightboxing a quiz question. On my base slide I have kind of a game interface that tracks points and wrong responses with little icons. Points is updating fine, but wrong responses is not.

Paul Zamora

Same issue wlith lightboxes, once opened then closed, the base slide underneath does not recognize any variables.

I have a slide with 3 buttons that show 3 light boxes (1 ea) and it won't recognize the variables the lightbox triggers.  Replay of the slide is also an issue.  Performance is very buggy, it often just disables, plays like it was new or the buttons are all disabled.

In future courses, I will not be adding lightboxes.  if anyone finds a solution, please post.

Diana Myers

I realize this original post was quite some time ago, but I came across this very issue yesterday while helping a colleague with her Storyline 2 file. 

Variables update in real time, so that's why the variable values update when the lightboxed slide is opened.  The issue is that the timeline on main slide (from which the lightbox slides are launched) only starts once - it stays there while the lightboxed slides are displayed on top.  When the lightbox is closed, you're still viewing the main slide, but it didn't "restart" the timeline on the main slide. 

The workaround that I used was to create what I call "mock" lightboxes - basically they are slides without the PREV or NEXT buttons and they are built to look just like lightboxes.  These work because you are leaving the original slide, loading a completely new slide, and returning to  the original slide - which reloads that slide and reads the triggers to change the state of any objects - in my case the state changes are triggered by variable values.

Here's a demo of my file, and I've attached a copy of the SL2 file for reference.  Hope this helps - Cheers!

Margot Epstein

I stumbled across this thread while also searching for a solution to this issue. I figured out another solution.....

I was trying to change a button (a "continue" button that's not part of the player) from a "hidden" state to "normal" after the Learner visits a lightbox slide (for this example it was a custom glossary). To make things more challenging, the link to the glossary was in the top of the player.

The method I used is this:

  1. Create a variable called "GlossaryVisited" and set its original state to "False."
  2. Set initial state of Continue button to "hidden"
  3. Set a trigger that changes the GlossaryVisited variable to "True" when the timeline starts on my custom glossary
  4. Create a hotspot on your main slide that covers the area where the "x" button is on the lightbox slide.
  5. Set a trigger for the hotspot on the main slide that says "Change state of "ContinueButton" to "normal" When the user hovers the mouse over IF "GlossaryVisited" is "equal to" "true"

Hope this helps someone else!

 

 

Dan Graham

Good post.  I just used the 'hover to change state' technique.  Except I placed a hotspot over the entire slide, so whatever object state you're trying to change will change instantly if the appropriate variable is set to true.  

But, has anybody figured out the 'Replay Slide' problem when opening a light box?  When I open the lightbox, close, and click replay on the base layer, it jumps to the beginning and then pauses.  I've adjusted the audio to start at 0.1 seconds, so that's not the problem.  And there are no layers on the slide.  I'm puzzled.  Maybe it's just a bug. 

Christie Pollick

Hi, Doug -- Thanks for your question, and as I mentioned to Dan in my last post, if there is a certain participant here in the discussion you'd like to reach directly, you are welcome to go to their profile page and use the 'Contact Me' link for further inquiries. 

Or, you are always welcome to share your file to see if someone in the community can take a look and shed a bit more light on the issue you are having, as well. :)

Diana Myers

Hi Dan - I'm not sure if there's anything you can do to restart a slide after opening a lightbox.  You can use "mock lightboxes" which are slides or layers designed to look exactly light a lightbox (instructions posted earlier in this thread).  

As for the replay slide issue you're describing, can you send screen shots of your slide or share a copy of your project file?

Happy to give it a shot and see if I can help!

Seth Merriam

Hi Everyone, I wanted to share another work around I built for this... which allows me to actually use the lightboxing!

Essentially what I did was use an intermediate layer (that has nothing on it so its more or less hidden) to do the heavy lifting in both directions.

So, the goal:

Have a button that does two things: 1) open a quiz in a lightbox, 2) change states when the quiz is successfully completed.

Here are the parts I used:

  1. A quiz generated from a quiz bank... in its own scene and complete with a results slide.
  2. A button to start the quiz, that also has a "completed" state to show when it is done.
  3. a hidden layer that has some additional actions on it.
  4. a variable to keep track of what state the button should be in (false == not completed)

And here is what I did (I will describe them in order of actions to hopefully make the logic clear, even though that means bouncing back and forth between slides/layers/screens just a little bit):

  1. I added an action to the "quiz" button so that when it's clicked it opens the hidden layer.
  2. I added an action on the hidden layer so that when the layer's timeline *starts*, it opens the quiz bank slides/scene in a lightbox -- I believe this also pauses the "original" timeline.
  3. I added a button on the "success" layer of the quiz, that does two things:
    1. sets the variable to toggle the button state to true for a completed status (note: I could have done this just on the slide layer it self as well)
    2. closes the lightbox
  4. now, back on the hidden layer timeline (i.e. after the user clicked the button from step 3) I set two additional triggers to fire when the timeline *ends*:
    1. one to change the state of the button IF the variable is set the way I want it
    2. one to hide the layer

I set the timeline of the hidden layer to 1/2 a second, and it seems to all work pretty well!

Hope this is helpful to someone along the way... its not restarting the slide, but, like I say, it does allow me to use lightboxes and change the state of things on the base slide!

Seth Merriam

Heres a quick version, I cant share the original.

In this version I did move the trigger to set the variable to the "Success" layer (just in case a learner closes the lightbox instead of clicking the button). Otherwise its the same as what is written above. If anyone finds bugs, I'd love to hear it ;)

Clingendael Academy -  Communication

I have a similar problem, although mine is not with the button that links to the lightbox. Rather, I built in a progress tracker located at the bottom left corner of my master slide, which calculates the percentage of the module covered based on the amount of slides that have been viewed. I want that tracker to show progress when the lightboxes have been viewed as well.

The problem is that the tracker only recalculates when the base slide is loaded. Since the base slide only loads once, my tracker doesn't update after the lightboxes close, even though they are taken into account in the formula.

Any bright ideas on how to fix this? I've attached a test file for your reference.

Clingendael Academy -  Communication

I've tried to fix this by putting an invisible object/button over the lightbox slides, which is triggered by (in that order):

1: close lightbox when user clicks object

2: jump to desired scene when the user clicks object

This doesn't reload the base slide unfortunately. This does work when redirecting to another slide, but I'm guessing Storyline doesn't reload because it somehow figures it is already directed to the desired slide. The slide is set to "reset to initial state".