Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

prevent a learner from progressing on a slide

New Here ,
Apr 17, 2018 Apr 17, 2018

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

371
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 17, 2018 Apr 17, 2018

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!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Apr 18, 2018 Apr 18, 2018

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

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 18, 2018 Apr 18, 2018

You need an event and an action, this cannot be done just with timeline,

except by moving the button timeline till the wanted start.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Apr 18, 2018 Apr 18, 2018

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

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Apr 18, 2018 Apr 18, 2018

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

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Apr 18, 2018 Apr 18, 2018

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");

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 18, 2018 Apr 18, 2018

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.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Apr 18, 2018 Apr 18, 2018

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

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Apr 18, 2018 Apr 18, 2018

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.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 18, 2018 Apr 18, 2018
LATEST

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.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 18, 2018 Apr 18, 2018

You must have done something awry, enabling a button is never firing the success event for me.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Help resources