Skip to main content
Participant
January 29, 2016
Question

Can you assign Hide TOC On Enter to all Master slides?

  • January 29, 2016
  • 2 replies
  • 408 views

I currently developing a Captivate template for my company and the default TOC model is overlay. I want to make it that once they navigate to a new slide it causes the TOC to hide. I can manually configure each slide to do this manually but I am trying to find a way that any slide created from the master slide deck will have this setting configured already. Thoughts?

This topic has been closed for replies.

2 replies

Lilybiri
Legend
January 29, 2016

Maybe better use the JS script posted above, because it is not possible to assign an action On Enter for a Master slide.

All depends how you create the 'template' because I see a lot of confusion between 'theme' and 'template'. It is pretty easy to assign 'Hide TOC' to the On Enter event of all slides: just select all slides in the Filmstrip with CTRL-A and assign the action Hide TOC to the On Enter event. If template means that the users always have to use copies of slides with placeholders, that will do the trick.

Participant
January 29, 2016

Thanks lilybiri,

Unfortunately my template uses a slide deck of master slides and not just a bunch staged in the filmstrip view. I'll most likely just add the instructions to the above to the content creation guidelines. Just trying to remove as many obstacles as possible for my users.

TLCMediaDesign
Inspiring
January 29, 2016

I do this with the common JS Interface.You can put this in a JS file or in the head of the html page. If html enclose in <script></script> tags.

var interfaceObj, eventEmitterObj;

window.addEventListener( "moduleReadyEvent", function( e )
{
interfaceObj = e.Data;
eventEmitterObj = interfaceObj.getEventEmitter();
    initializeEventListeners();
});

function initializeEventListeners()
{
if ( interfaceObj )
{
     if ( eventEmitterObj )
  {
         eventEmitterObj.addEventListener( "CPAPI_SLIDEENTER", function( e )
   {
    window.cpAPIInterface.setVariableValue( "cpCmndTOCVisible", 0 );  
            });
  }
}
}

Participant
January 29, 2016

Is there a way to embed that into the template so that any person who creates a project from the source template will have that automatically applied? Sorry if that's a dense question but I have no experience manipulating jsfiles with my captivate projects.

TLCMediaDesign
Inspiring
January 29, 2016

You can put it in the users Captivate template.html files. It would get loaded every time a course is published.