Skip to main content
Inspiring
November 5, 2015
Answered

Navigational advanced/shared actions fail to execute when assigned On Exit. Why?

  • November 5, 2015
  • 1 reply
  • 289 views

After extensive testing it looks like the bottom line is as described in subject - as far as responsive projects go. The issue isn't present for blank projects as far as I can tell. I'm running Captivate 8.0.1.242 on Windows 8.

I can maybe work around this by writing in a JS event listener, but I can think of no other way to have conditional navigation actions trigger at specific times instead of via user interaction - i.e. a user clicks one of 2 icons on slide 1 to view more detail, taking them to the slide where that detail is covered, after which they're returned to slide 1 UNLESS they've viewed all the detail slides, in which case they're sent to the end/next section slide.

Is this a known bug? Is it even a bug? Can you replicate it? Do responsive projects with navigation advanced actions assigned on exit work fine for you? Any information would be much appreciated, I'd like to get to the bottom of this. I'd be happy to post more detail if this case functions for you - it looks like a bug from here though so I'd prefer not to bother initially.

Thanks!

This topic has been closed for replies.
Correct answer kellid80322

Hi Lieve,

Thank you for your response. I did see your article mentioning it - you have excellent Google visibility when it comes to Captivate. It's a shame that you're one of the only resources though - and Rod of course(I know you're out there too). It seems pretty bizarre to me that Captivate gets consistently released with out-of-the-box functions that don't work, and support is pretty limited. I can generally find a way around them, but it always adds a lot of time to my projects debugging only to find that the problem is Captivate's and not mine... not ideal. Makes me wonder if Adobe is forcing annual releases regardless of where their Cp dev team is at.

In this case, the same On Exit function that failed in my responsive project did work when assigned identically in a standard/blank project - so at least in this one case it's not a general "on exit doesn't work how I want" issue. I'm not trying to execute anything that needs to happen ON the slide being exited, I just need it to execute - at some point. I determined that all manner of actions do work in my project for On Exit: I can increment variables, show and hide objects, etc etc - the only thing that fails (and it fails 100% of the time for me in responsive projects) is using navigation as part of advanced or shared actions, whether Jump To Slide and other slide based navigation, or GotoFrameAndResume or other frame based "micronavigation" (thanks for giving me the initial tip on that, by the way - it's served me well).

Unfortunately I couldn't add the action to my On Enter for the subsequent slide, since in my case I need my On Exit function to kick users either back to the beginning or to the end slide in the project, so if set at On Enter they would never get to see that slide's content. I did end up doing something similar: adding brief 'redirect' slides in between my content slides, which have the same function set On Enter. Seems like a dumb work-around to me, but my JS solutions weren't behaving well and I've had enough debugging.

If you feel like it I would appreciate if you could verify whether it seems like a bug to you as well, and maybe even whether it persists in Captivate 9 (I think I recall you having that). I always get nagging doubts that I'm mucking something up I just haven't found yet, though this one does seem like it has nothing to do with me. Thanks again.

1 reply

Lilybiri
Legend
November 5, 2015

The On Exit event is not to be trusted, not only for responsive projects. I avoid it when possible. The action is executed only when the last frame is reached of the slide, which is not always the case, and it is done after that last frame. In most cases it can be easily replaced by an action On Enter on the next slide, which is a better solution. I mentioned the problems with On Exit in this article:

Events and (advanced) Actions - Captivate blog

kellid80322AuthorCorrect answer
Inspiring
November 5, 2015

Hi Lieve,

Thank you for your response. I did see your article mentioning it - you have excellent Google visibility when it comes to Captivate. It's a shame that you're one of the only resources though - and Rod of course(I know you're out there too). It seems pretty bizarre to me that Captivate gets consistently released with out-of-the-box functions that don't work, and support is pretty limited. I can generally find a way around them, but it always adds a lot of time to my projects debugging only to find that the problem is Captivate's and not mine... not ideal. Makes me wonder if Adobe is forcing annual releases regardless of where their Cp dev team is at.

In this case, the same On Exit function that failed in my responsive project did work when assigned identically in a standard/blank project - so at least in this one case it's not a general "on exit doesn't work how I want" issue. I'm not trying to execute anything that needs to happen ON the slide being exited, I just need it to execute - at some point. I determined that all manner of actions do work in my project for On Exit: I can increment variables, show and hide objects, etc etc - the only thing that fails (and it fails 100% of the time for me in responsive projects) is using navigation as part of advanced or shared actions, whether Jump To Slide and other slide based navigation, or GotoFrameAndResume or other frame based "micronavigation" (thanks for giving me the initial tip on that, by the way - it's served me well).

Unfortunately I couldn't add the action to my On Enter for the subsequent slide, since in my case I need my On Exit function to kick users either back to the beginning or to the end slide in the project, so if set at On Enter they would never get to see that slide's content. I did end up doing something similar: adding brief 'redirect' slides in between my content slides, which have the same function set On Enter. Seems like a dumb work-around to me, but my JS solutions weren't behaving well and I've had enough debugging.

If you feel like it I would appreciate if you could verify whether it seems like a bug to you as well, and maybe even whether it persists in Captivate 9 (I think I recall you having that). I always get nagging doubts that I'm mucking something up I just haven't found yet, though this one does seem like it has nothing to do with me. Thanks again.

Lilybiri
Legend
November 6, 2015

Even with an On Enter action, what you want to achieve can be perfectly done, user will never see they were just in the first frame of the next slide because the action will be executed immediately. I try to avoid issues like that if there is a valid workaround, gave up trying to find out if it has been solved in a new version. I just think this On Exit event is not suited for navigation purposes, and I use it very rarely. Is it a bug? I don't know, I'm not a programmer, it feels more like it is designed that way for some unknown reason.

Be careful with sequence in advanced/shared actions, most files I debugged for clients had issues because of sequence bugs.