Copy link to clipboard
Copied
Hi community,
I want to have the next button greyed out and so can't be clicked until after 5 seconds elapses and then opacity goes to 100% and then the learner can click next and proceed
I can use a JS timer for this and it works well, but a bit of a fiddle tbh!
Is there a shared action or some other way i can do this I have 100s of buttons
so something easy would be really good
thanks in advance
MM
Copy link to clipboard
Copied
You don't have any other interactive object? Are you using Captivate 9 or 2017? If yes, you can use this workflow:
Add a custom state to the (shape) button with that 'dimmed' look.
Create a shared action which looks like this:
Disable button
Change state of button to Dimmed
Delay Next Actions by 5 seconds
Enable button
Change state of button to Normal
The three items in blue will be parameters in the shared action. If you want to use this with different delays, you can add the literal '5' as parameter.
Trigger this shared action On Enter of each slide. Beware: this Delay command will not be paused by the pausing point of an interactive object.
Beware; I am talking about a custom Next button, not about the Next button on the playbar!
Copy link to clipboard
Copied
Thanks Lilybiri
almost perfect when i enable the button it just jumps to the next slide - when i want it to be enabled so the learner can click it
is there a way I can enable the button without fire ing off the action
Cheers
MM
Copy link to clipboard
Copied
You need an event and an action, this cannot be done just with timeline,
except by moving the button timeline till the wanted start.
Copy link to clipboard
Copied
Thanks Lilybiri,
extending the timeline wont work for me as i might need to vary the length of timing at some stage
I'll use my JS timer as it works well but was hoping for something a bit smarter as I'll have to use this
on each button.
I tried with show/hide action and that still triggered the "go to next slide" that's on the button!
Is that the way its supposed to work?
Cheers
MM
Copy link to clipboard
Copied
in my javascript timer I'm using cp.hide("Button1") and cp.show("Button1")
Is there a way I can change the state of the button using javascript that would make my life easier!
cheers
MM
Copy link to clipboard
Copied
You can use
cp.changeState("objectName","stateName");
for example
cp.changeState("Button1","dimmed");
cp.changeState("Button1","Normal");
Also, you might want to try disabling rather than hiding.
cp.disable("Button1");
cp.enable("Button1");
Copy link to clipboard
Copied
I'll leave you to the JS experts... thought the shared action I proposed was the easiest way. Turn the number '5' into a parameter and you can change it for each slide. You need to change a state if you want a dimmed look instead of hiding the button. Sorry to have bothered you with that shared action, seems you prefer a JS.
Copy link to clipboard
Copied
thanks
the problem with the captivate action is that the "delay next actions" - not just next action - triggers the button to go to the next slide if it didn't do that shared actions would work really well
Copy link to clipboard
Copied
I think I have seen this issue before.
It seems that if I only have one button on the slide - this is when I have the issue.
Maybe try putting a small invisible click box somewhere on the screen and make sure it is set to pause until user clicks.
That way the enable/disable of the button that you want the user to click will not cause the project to continue.
Copy link to clipboard
Copied
It is not doing that for me at all. Where is the pausing point for that button? Please don't bother with click boxes, something is awry with your set up. That pausing point needs to be later than the time you use in the Delay command or the button will be enabled when it is in its inactive part. Show me the timeline of a slide please!
If you really want to be sure the slide is paused, have an invisible shape button on the main master slide, which is set to pause. it will pause each slide at its end., whatever its duration. Click boxes are so old school for me, especially since you'll need tons of them.
Copy link to clipboard
Copied
You must have done something awry, enabling a button is never firing the success event for me.