Skip to main content
Known Participant
June 3, 2014
Answered

Hiding TOC when user navigates to start of same slide

  • June 3, 2014
  • 2 replies
  • 1127 views

Hi,

I have a project that includes a series of video clips (each clip is on a separate slide) and the user must watch all the video to complete the course.  Therefore we have taken away the scrollbar, forward, fast forward, etc. from the playbar and also only allow navigating to slides that have already been viewed.   I have each slide set with Hide TOC on entering so that when they use the TOC to go back and review a slide they don't have to close it.  Works great, except when a user decides they weren't paying attention or for some other reason they want to go back to the beginning of the slide they're currently viewing.  Then, when they use the TOC to jump back to the beginning of the same slide they're on, the navigation works but the TOC isn't hidden.  For users this is seen as an inconsistency and as if something is broken.  Is there any way for me to trigger an action automatically at say the 1 second mark to close the TOC?

I'm using Captivate 7.0.1.237 on a Mac Pro running Mavericks.

Thanks,

Walter

This topic has been closed for replies.
Correct answer RodWard

Captivate has no default way to do this.  By using the TOC to return to the start of the same slide you DO NOT get to execute the On Slide Enter event again.  That only fires if you enter the slide from ANOTHER slide.

There was a free widget that allowed you to execute time-based advanced actions:

http://www.infosemantics.com.au/widgetking/the-widget-pages/

However, this widget may not work in any version after Cp6.1:

http://captivatedev.com/2012/09/26/adobe-captivate-6-0-free-widget-time-based-actions/

And it is an SWF widget so not compatible with HTML5

2 replies

Inspiring
June 6, 2014

I've created custom playbars for courses that have auto-close of the TOC whenever the course is in a play mode, and that pauses the content if the TOC is selected.  The playbar remember the playback mode when the TOC is opened, and if the TOC is closed again without starting a different slide, the course playback mode is restored.

This creates a better experience for users as they do not have to click on the TOC close button again to close it after making a slide selection.  Also if play or rewind, back or next is selected on the nav bar, the TOC closes automatically as well.

Some code is Captivate version specific, as some changes do require some internals knowledge of the published Captivate code version(s).  That being said, I suppose a lot of plugins such as the ones mentioned earlier in this chain have the same issues.

There are a lot of things that can be done cross-platform using the customizable playbar AS3/HTML code as a platform for implementing them without changing the Captivate core code directly, some of which has been hidden in DLLs by Adobe over the last couple of Captivate iterations, making it harder to patch directly.  Some types of changes do require some significant knowledge of the internals of the AS3/HTML implementation though, such as changing the way the bookmarking is done, such as requiring scenes to be viewed to completion and/or marked as complete by advanced actions in the slide itself before being tracked as complete.  Disabling the scrub bar generally requires this as well unless it is turned off completely in the settings.  I've also changed functionality of buttons and allowed re-ordering of buttons on the playbar in this fashion, such as changing the rewind course function to be a rewind slide function which is more useful to clients on a nav bar.

Some of this could possibly be accomplished in Captivate 8 via Javascript in a cross-platform manner, although it might still require some support in the SWF from the Flash playbar code to facilitate some of the tests that are not yet available in the common JS interface API.  Playbar related functionality changes are probably best done in the playbar code.

Known Participant
June 10, 2014

That sounds like a very nice user friendly solution you've developed.  I'm somewhat new to Captivate so I expect what you've mentioned is beyond my current ability but I'll look into it.

In the meantime, I've come across a Time Based Widget at captivatedev.com that appears to do what I need.  It lets you set an action when the playhead reaches the start of the widget and then run an action at the end of the widget.  In my case, I just start the widget at 0.1 second on the timeline.  It isn't instantaneous like visiting other slides, but I think most users would hardly notice it and just think the 0.1 second delay is computer/internet lag...

This does bring up another issue with adding Widgets.  I haven't seen anything yet, but since this will be in a SCORM environment, has anyone seen any issues with adding widgets either with stability or SCORM reporting?  I don't imagine it should, but since it looks like I'll have 3 widgets on each slide I just want to get ahead of any issues before having the client fall in love with the functionality only to find out it causes problems with use down the road.

Thanks all for your help.

Inspiring
June 10, 2014

Widgets should generally have no affect on SCORM reporting. You can’t use widgets in Quiz slides, a lot of things are restricted there, and there may be some other situations with particular types of Captivate slides where some widgets do not behave well with them. I just had a nice idea – I’m going to try to see if there is a way to trigger user defined Advanced Actions from a plugin/playbar script. It would be nice to be able to define some functionality, like say particular events such as you want, and allow a user to define their custom response to the event by creating an Advanced Action with a particular naming convention. I’ll have to check to see if any of the naming makes it into the output though J

RodWard
Community Expert
RodWardCommunity ExpertCorrect answer
Community Expert
June 4, 2014

Captivate has no default way to do this.  By using the TOC to return to the start of the same slide you DO NOT get to execute the On Slide Enter event again.  That only fires if you enter the slide from ANOTHER slide.

There was a free widget that allowed you to execute time-based advanced actions:

http://www.infosemantics.com.au/widgetking/the-widget-pages/

However, this widget may not work in any version after Cp6.1:

http://captivatedev.com/2012/09/26/adobe-captivate-6-0-free-widget-time-based-actions/

And it is an SWF widget so not compatible with HTML5

Lilybiri
Legend
June 4, 2014

The only included possibility for a time-based event, but with much issues are the Timing and the Hourglass Interactions. However: they are designed to stay at least 2 seconds after time is up; in your case not a possible solution.

Known Participant
June 4, 2014

Thanks for letting me know none of the widgets are in the running.  And thanks also for your blog entry on micro navigation within a slide - that helped me a great deal with other elements of this project.