Scenes triggers, variables and states
How interactivity works on the Scenes slide canvas: the events and actions a trigger can use, conditions, course variables, object states, the order triggers run in, and how Storyline triggers and Captivate actions arrive on import.
Last updated 8 min read
Triggers belong to objects
A trigger is "when this happens, do these things". Every trigger lives on an object: select it and open the Triggers tab in the Properties panel. Add Trigger creates one that reads When user clicks → Go to next slide; change the event and actions from there. Each trigger card reads as a sentence, and anything it points at that no longer exists shows as "(deleted)".
Triggers that respond to the slide rather than to the learner (when the slide starts or ends, a point on the timeline) are still set on an object on that slide. Imported courses put them on the slide's first object.
Flow View, at the top of the Triggers tab, shows the same triggers as a diagram and has quick starts for common ones: Click → Next, Click → Prev, On load → Show layer, Click → Set variable, Hover → Change state, Click → Open URL.
Events
- When user clicks, When user double-clicks, When user hovers, When mouse leaves.
- When slide starts, and When slide ends: when the slide's timeline runs out.
- At timeline position: a number of seconds into the slide; it fires once each time the slide plays.
- When variable changes: any variable, or one you name.
- When state changes: this object or another, entering any state or a particular one.
Actions
A trigger runs its actions in order:
- Jump to slide, Go to next slide, Go to previous slide.
- Show layer, Hide layer, Toggle layer.
- Show object, Hide object, Change object state.
- Set variable, Adjust variable (adds its Amount to a number, in the Triggers tab and Flow View alike; a negative amount subtracts) and Toggle variable (flip true and false).
- Open URL, in a new tab unless you untick it.
- Play media, Pause media.
- Complete course, Submit results and Show correct/incorrect.
Imported Storyline courses can also open and close lightbox slides; those actions come only from an import.
Conditions
Add conditions to a trigger to make it run only sometimes. Choose what a condition tests, then pick the thing it tests from the list under it:
- Variable: pick the variable. A number variable compares with is, is not, is more than, is at least, is less than or is at most; a text variable with is, is not or contains; a true/false variable is true or false.
- Object state: pick the object, then the state (an object that has never changed state counts as Normal).
- Slide visited: pick the slide, then has been visited or has not been visited.
- Layer showing: pick the layer, then is showing or is hidden.
With two or more conditions, choose ALL (every one must hold) or ANY (at least one). Both the Triggers tab and Flow View edit conditions the same way; in Flow View, click an IF pill to edit it. Conditions on imported triggers arrive already pointing at their variable, object, slide or layer.
The order triggers run in
When an event happens, the object's matching triggers run one after another, in the order they are listed, and each one checks its conditions against the state the triggers before it left. That is how an imported if/else works: it arrives as one trigger per branch, and the second branch sees what the first one set.
The preview and the exported package run triggers with the same code, so a course behaves the same in both.
Variables
Variables belong to the whole course. Open them with Variables on the toolbar (or ⌘K → Variables): the Course Variables dialog lists each one's name, type and starting value. Add Variable creates one.
- Types are text, number and boolean (true or false). Changing the type resets the starting value to empty text, 0 or false.
- Names start with a letter, underscore or $, and contain only letters, numbers, underscores or $.
- Double-click a name to rename it.
In an exported SCORM package variables are saved with the learner's progress, so a learner who leaves and comes back finds them as they were. When resume data runs short, variables are kept ahead of how objects looked; see resume data.
Object states
A state is a named look for an object: a button can be Normal, Hover, Visited or Disabled; a shape Normal, Hover or Selected. Normal, Hover, Visited, Disabled, Selected, Correct and Incorrect are built in. On the States tab, click a state to edit how it looks, or Add State to name a new one.
Change object state switches an object to a state by name; a condition can test which state an object is in. When a learner answers a question on a slide it switches to Correct or Incorrect.
Imported Storyline triggers
A Storyline HTML5 publish carries its triggers, and they arrive as Scenes triggers: clicks, double-clicks, hovers, slide start and end, timeline cues on the base layer and variable changes; jumps (including into a lightbox), layers shown and hidden (Storyline's "hide other layers" included), objects shown and hidden, variables set, adjusted and toggled, state changes, media and links. If/else becomes one trigger per branch: AND is ALL, OR is ANY, and Else gets the opposite condition.
Anything that would run differently is left out and counted in the import report by reason, for example Execute JavaScript triggers, Motion paths and animation triggers, Conditions mixing AND with OR, Triggers using built-in Selected, Disabled or Visited states, Hover triggers that restore on mouse leave, Custom Next and Previous button behavior, Result-slide actions and Triggers reading a variable that is no longer kept up to date. See Import a published Storyline course.
Imported Captivate actions
Captivate Classic actions arrive the same way, from a .cptx or from a Classic publish whose actions keep state: the success action of a button, click box or smart shape used as a button becomes a click trigger; a slide's On Enter becomes When slide starts, and its On Exit When slide ends on a slide that never pauses for a click. Show, hide, jumps, variables, conditional and shared actions, and change state come across; a jump runs last, as Captivate makes it once the whole action has run. An action that changes the variable its own condition tests gets a helper variable named branch_1 (and on) so it reads its condition once.
Left out and counted by reason: Execute JavaScript actions, Apply Effect actions, Actions that depend on the timeline pausing, Conditional actions testing system variables or other variables, Conditional actions mixing AND with OR, Changes to Captivate's built-in states, Actions on a missed click or last attempt, Jumps Scenes cannot make the same way and Actions with no equivalent. From a .cptx, change state and conditions with more than one test are counted rather than converted; import the HTML5 publish when they matter.
An all-new Captivate (12/13) publish arrives on the slide canvas when its actions keep state and every slide is free-positioned (a PowerPoint deck imported into Captivate, for example): clicks, On Enter and hover; jumps, show, hide, assigning a value, decisions and change state to the author's own states. A click set to run once gets a once_1 (and on) variable that slide entry clears. Enable and disable, animations, delayed or repeated actions, slide exit actions and conditions on Captivate's own variables or on objects are counted instead. See Import a Captivate course.
Part of the documentation: Build.
Found something here that does not match what the product does? That is a bug in the guide — see all guides or tell us from the Help Center.