JavaScript and advanced Actions

I try to do the following in Captivate 6.0:

  1. Display an animated gif of the dice on a slide in Captivate [work]
  2. When you click on:
    1. Generate a number 1-6 as a result of "the launch" and assign it to a variable [of work]
    2. Show / hide items on the page so that the user can see the result of their deployment and a next button so they can continue to [does not]

I tried to reach the Show / Hide by:

  • Jump to the current slide, using JavaScript and
  • Advanced action on enter to the slide, which checks if the value of the dice has been set and then show / hide objects as you wish.

Unfortunately, it seems that when I jump to the same slide using JavaScript, enter it event is not called. If I click back, and then forward on the playback bar, I see the desired result.

I have included the JavaScript and the tip Action (fixed on enter to the slide) below.

Is there a way to:

  1. Update the JavaScript so that when I jump to the current slide, enter to be executed? OR
  2. Call my action advanced directly from JavaScript? OR
  3. Get the desired result in a different way... I'm not particularly fussed I used JavaScript or advanced Actions to achieve this!

Here are the details:

Variable (set through project-> Variables...)


Dice_Value = - 1

Fast action (in between)

If Dice_Value is greater than or equal to 1

Hide Dice_Animation

Hide Dice_Click_Box

See the Dice_Value_Text

See the Dice_Next

See the Dice_Next_Caption

On the other

See the Dice_Animation
See the Dice_Click_Box
Hide Dice_Value_Text
Hide Dice_Next
Hide Dice_Next_Caption

JavaScript (called when the user clicks on the animation of dice)

function rollTheDice() {}

cpObj = document var. Captivate;
var diceValue = 1;
currentTime var = cpObj.cpEIGetValue ('cpInfoCurrentTime');
var lastDigit = parseInt (currentTime.charAt (7));
{Switch (lastDigit)}

case 7:

diceValue = 1;
break;

case 8:

diceValue = 2;
break;

case 9:

diceValue = 4;
break;

case 0:

diceValue = 5;
break;

by default:

diceValue = lastDigit;
break;

}
cpObj.cpEISetValue ('m_VarHandle.Dice_Value', diceValue);
cpObj.cpEISetValue ('cpCmndGotoSlide', cpObj.cpEIGetValue ('rdinfoCurrentSlide'));
cpObj.cpEISetValue('rdcmndResume',1);

}

rollTheDice();

If you return to the first image of a slide, the action that is triggered by the event progress on enter is not executed. I'm an advanced user action, Javascript is still just a mystery to me. If I want to enter action to repeat itself, I will return to the slide before the slide that contains a conditional action (slide has already been visited, so setting a variable and checking that one) get immediately to the next slide. This way subsequently enter event repeats. Haven't checked it yet, but maybe browse the framework before the first frame of the current slide will be work as well (micro-navigation), something I have to try it because maybe you need to get a couple of frames further back.

Lilybiri

Tags: Adobe Captivate

Similar Questions

  • The Template Variables and advanced actions

    I created a template to 8 Captivate, which includes several variables user and advanced actions (the model was created with Captivate 7.)

    When I create a new project from the template, Captivate automatically creates duplicates of all the variables user and advanced actions changing the names slightly (add numbers at the end). The thing is now I have twice as many actions and variables, and Captivate does not allow me to delete the shares referenced by the model. How to avoid this?

    Is it possible to return to the original set of variables user and actions on my project? Thank you.

    The upgrade often cause this kind or problems. Normally, you should be able to easily remove CP8 variables, but of course, I do not avoid upgrade especially when the characteristics have changed as is now done with stocks shared in CP8. I agree that it would be easier if the upgrade still worked smoothly, but learned after so many years with the software that it is rarely the case.

    The case you describe is perfectly suited for common actions, I even used it as an example in an online seminar I did (always for CP7) and definitely want to show it again if I ever get the chance to make another or provide training. Creating a library with shared actions that you can use over and over again now is no longer a daydream. No need for a model reuse advanced actions.

    Lilybiri

  • Can I use conditional and advanced actions on the same button?

    I'm fairly new to Captivate, but come from a flash background and I do of Captivate to do certain things, that I expected to be straightforward and a normal requirement.

    I want to create a screen with a number of interactive objects, in this case photos, it's the learner clicks on to display a text element.

    By clicking on the following image, the first piece of text is hidden and a second piece shown.

    There are 6 images/buttons which have to work in this way.

    However, I also want to determine if all the buttons have been used, as we force the user to view the entire slide before you continue.

    I can do the hide/show text and buttons, and I wrote a conditional action to check the variables for each button. However I do not know how and when to appeal to this action.

    I was hoping that in my Advanced action for each button, I could add in a call to the conditional action "record"variables", which would be very well fulfil this requirement, however this doesn't seem to be the case."

    I also animation/effects on the timeline before the images are on the meaning of screen I want to go back to the beginning of the timeline to use an event "on enter.

    I am surprised that this isn't something that people most need because while it may be frowned upon outside in the field of e-learning, disabled navigation is frankly not will disappear and working for a large corporation will be a must.

    If anyone can shed some light on this, or perhaps suggest a better approach then I'd appreciate it.

    Thank you.

    Of course, it is possible. This is the approach I explained (for previous versions):

    http://blog.lilybiri.com/template-for-reusing-script

    The models that I offered it, were invited to a lot of times and are used all over the world, which is funny

    I also have templates for CP6 and 7, but has stopped offering everything for free. And 7, you can have all the shares shared in a library that can be used as external library... just a tip: http://blog.lilybiri.com/new-features-in-captivate-7-dot-01

    Agreement on controls on effects for paths, please submit a feature request as many have already done to have the most control over the coordinate without having to change the XML file.

    It would be nice to have timed events. Jim Leichliter has a widget (only for the SWF) which allows some scripted events. The interaction of timer that can do as well, but is not very accurate because after that time there is always a lag of about 2 seconds.

    http://blog.lilybiri.com/events-and-advanced-actions tells us about the available events.

    Sorry for all these links, but advanced actions are my passion, since they appeared with 4. They are limited, all right, but I managed to convince many users to give them a try at different levels. Would love to train more users for this "point-and-click" approach that does not really need programming skills, but only a logical mind.

  • Alternate slides with JavaScript (or advanced Actions)?

    I was wondering if someone out there with the knowledge of JavaScript could help me a little...

    A colleague came to me with a question about randomization of the slides. We work in Captivate 5.5. The slides are all part of a quiz (but aren't question slides). They have a click box. The idea is that if the user clicks on the box (or off the beaten track), it shows a good (or bad) legend and then jumps to a random slide (new). If the user manages at the end of the slide without selecting anything, their time is running out and they get fried to a random slide and it is regarded as an incorrect answer. The user should see all of the slides in random order, with no recurrence.

    I created a tip Action, integrating the widget of random number, and it works. My problem is that the project has 50 blades, and I'm not sure it is very feasible with advanced Actions. As it is, my test with 3 random slides is an action with 4 conditional statements, so I'm not really looking to create one for 50 slides. (I don't know even if Captivate would be able to handle this).

    Is there a way (judging) to achieve with JavaScript instead? My vague idea based on my very limited knowledge of programming is:

    1. on enter first Captivate slide, create the array of random slides - 1 slide numbers (because cpCmndGotoSlide index starts at 0)
      so if I had a project where I wanted to shoot random slides 3-8, the would be [2, 3, 4, 5, 6, 7]
    2. Shuffle/random table
    3. set up a variable called slideviews = 0 to keep track of how many slides have been seen (and so which item in the table to move to the next randomly)
    4. Create a function that I'm going to run when I want to access a random slide (whether at the end of a slide or in the success or failure of a click on a square)
      something like... If slideviews < array.length, cpCmndGotoSlide = array [slideviews]; slideviews ++; Another thing, cpCmndGotoSlide is 8 (jump at the end of the slides)

    Of course, this lack of things (like the proper syntax and things needed to communicate with captivate)... but is sound logic? Is there a better way to do it?

    Come to think of it, the table and the slideviews variable should be saved if we wanted it works with bookmarking... I think that this project will be SCORM 1.2 LMS System.

    It would be nice to have a variable user I can access within the Captivate project and I can put in a legend to show the script #. Something like scenario = slideviews (I know that's not the syntax, reading series of JavaScript of Jim Leichliter on CaptivateDev.com, but that's the basic idea.)

    Anyway, pointers would be very useful! Thank you.

    Edit: I played a little bit; for randomization, I found a code online, and then I wrote something that automatically creates a table and a function for the jump to a slide randomly. Here's what I have so far (not tested in Captivate yet):

    var objCP = document.Captivate;
    
    var randomNumbers = []; 
    
     // The following creates the values for the array: 3 to 52.
     // I want to randomize slides 4-53, using cpCmndGotoSlide (index starting at 0) to jump to them
    
    for(i=3; i<53; i++) {
                        randomNumbers[i-3] = i;
    }
    
    var n = randomNumbers.length;
      var tempArr = [];
      for (i = 0; i < n-1; i++ ) {
        // The following line removes one random element from arr
        // and pushes it onto tempArr
        tempArr.push(randomNumbers.splice(Math.floor(Math.random()*randomNumbers.length),1)[0]);
      }
      // Push the remaining item onto tempArr
      tempArr.push(randomNumbers[0]);
      randomNumbers=tempArr;
    
    var slideViews = 0;
    
    var randomSlide = function() {
    if (slideViews < 50) {
                        objCP.cpEISetValue("cpCmndGotoSlide", randomNumbers[slideViews]);
                        slideViews++;
                        objCP.cpEISetValue("scenarioNumber", slideViews);
              }
              //after all the slides have been seen, jump to the final results slide
              else {
                        objCP.cpEISetValue("cpCmndGotoSlide", 53);
              }
    };
    

    I doubt it will work off the bat, but maybe this is a beginning?

    I managed to get things working, so I thought I'd post my (probably a little unwieldy and inefficient) code in case people come across this thread and want a starting point:

    var objCP = document. Captivate;
    var randomNumbers = [];
    var slideViews = 0;
    CVS var = 0;

    shuffle var = {function (array)}
    var m = array.length, t, j;
    so that {(m)
    j = Math.floor (Math.random () * m-);
    t = array [m];
    table [m] = array [j];


    table [j] = t;
    }
    };

    var jumpSlide = function() {}
    If (slideViews < randomNumbers.length) {}
    objCP.cpEISetValue ('cpCmndGotoSlide', randomNumbers [slideViews]-1);
    slideViews ++;
    objCP.cpEISetValue ('scenarioNumber', slideViews);
    }
    else {}
    objCP.cpEISetValue ('cpCmndGotoSlide', 52);
    }
    };

    var randomSlide = function() {}
    If (g_objAPI.LMSGetValue ('cmi.comments') = ") {}
    for (i = 3; i < 53; i ++) {}
    randomNumbers [i-3] = i;
    }
    Shuffle (randomNumbers);
    g_objAPI.LMSSetValue ('cmi.comments', randomNumbers);
    resume ++;
    jumpSlide();
    }
    ElseIf (resume = 0) {}
    randomNumbers = g_objAPI.LMSGetValue('cmi.comments').split(',');
    slideViews = objCP.cpEIGetValue ('scenarioNumber');
    resume ++;
    jumpSlide();
    }
    else {}
    jumpSlide();
    }
    };

    The random slide order is stored in cmi.comments, and the position in the sequence is stored in a Captivate variable called scenarioNumber. I could have stored the two variables of Captivate in cmi.suspend_data, but in the end, I liked being able to see the numbers when considering the SCORM data. To work around problems with initialization, I made the creation/restoration of the part of random numbers of the function which climbs to a slide randomly, so nothing is actually executed when entering the first slide.

  • Images and advanced actions

    I'm setting up a demo of "false" to a program that uses our society.  I have a picture that should appear on the 100 + slides when you click and then click box disappear when you click another click box. Is this possible without renaming each image and creating multiple advanced actions?

    Example: See the slide: click the address: an address box image is displayed: click x to close the image address and see the original slide.

    I am using captivate 8

    You cannot attach files, you must insert screenshots in the form of images using the camera icon in the toolbar:

    Why click on boxes? Indeed, this means that you can copy/paste on each slide. Forget them and use this workflow:

    1. Put the image on the first slide, it time for the rest of the project, always on top. Then hide it output ("eye icon" in the upper-left panel properties). It will have a unique ID, it will be called "Im_One".
    2. Replace your boxes click the shape on the first slide buttons, so you as well for the rest of the project. Alternative is to put on the main model of slides. Remember do not overlap with other interactive objects on individual slides.
    3. Create an advanced or shared (better if you want to reuse this much) action for each of the buttons on the form, where you can hide or display the image. You can even create a toggle button, if you use a conditional action and follow-up user variable v_visib
  • Working capital and advanced Actions - Keep Alpha slidelets

    Hi all

    I have a question about the slidelet in combination with advanced actions. What I want to do is the following:

    When a user points to a specific item on my image, I want to set the alpha of everything that surrounds this item to 25% while keeping this element to 100% for the duration of the bearing (mouse over the rollover area).

    So I cut my image into different elements and use Advanced Scripting in the elements of specific bearing to say: on the overthrow, apply the effect-> image_surrounding_element-> Alpha = 25%.

    I do it for all images that are not part of the element that is subject to the substitution.

    However, here's my problem. I can keep the text in the rolling element very well for the time that I put. But when I rollover, the alpha Gets the value 25% but after a second, or 3 it of like the screen then resets and all alpha is 100%.

    How can I set the duration of the fast action to last as long as I want? Or at least so that the mouse away from the rollover area?

    Best,

    Frank

    Welcome to our community

    Personally, I would take the easiest road with that. I would like to size of the rollover area that is presented when you smile more basically to cover the entire screen. Can I insert a highlight box object and its size to be what you want the overthrow of sound. Then, use the option in the shadow of the outer part of the highlight box.

    There is no way I know to remove the X. However, I wonder if you tried what I suggested above if the X seems to be deleted because it would be at the edge of the screen.

    See you soon... Rick

    Useful and practical links

    Captivate wish form/Bug report form

    Certified Adobe Captivate training

    SorcerStone blog

    Captivate eBooks

  • JavaScript or advanced action help to increment the variable names

    I hope someone with Javascript skill can help me here. And it could also be possible with tip action, but I can't do it.

    I have a 'NombrAl' variable that chooses to enter 1 to 128 on blade.

    I have a series of variables - "but_word_1", "but_word_2" "but_word_3" etc all the way to "but_word_128".  They have text string values.

    I have another variable "spoken_word.

    By clicking on a button, I would like to that Javascript to define "spoken_word' with 'but_word_' + 'NombrAl '.

    e.g. If NombrAl then is 5 - window.cpAPIInterface. setVariableValue ('spoken_word', but_word_5);

    Thank you.

    Try this:

    window.cpAPIInterface.setVariableValue ("spoken_word", window.cpAPIInterface.getVariableValue ("but_word_" + NombrAl));

  • Audio management with animation and advanced actions

    Hello everyone,

    I actually try to use Captivate in order to show that a screen with several animations appear one by one with the following procedure:

    http://blogs.Adobe.com/Captivate/2011/05/adding-multiple-click-based-animations-on-a-scree n-with-adobe-captivate - 5.html

    But, I have a voice audio associated with the slide itself, and files audio link to each imported animation.

    I would like to cut the 'master' sound to listen to only a particular sound.

    You have an idea on how to do something like that?

    Thank you very much

    Best regards

    F.Bo

    Hello

    You cannot achieve this with the audio of the slide, but if you attach the audio to an 'invisible' object (perhaps a rectangle with fill transparent and no respect), you can control the audio using actions advanced to show/hide this object. This is how I realized several effects in my last blog. If I want to control audio that I will never insert as slide audio.

    Playtime with audio and widgets

    Thus, the workflow would be to hide animation with its seal and show the invisible object, which now plays the previous slide audio. When the user clicks to see an animation, attach an action to this box click (or button) that hides the invisible object and shows the animation.

    Lilybiri

  • JavaScript advanced action

    I created a tip action that I called "showMe".

    Then, I tried to trigger JavaScript. I tried

    cp.runJavascript ("showMe");

    cp.runJavascript (showMe);

    and

    cp.runJavascript (cp.model.data.showMe.oca); (I guess).

    but they give just JavaScript errors.

    How to call and advanced action Cp 9 using JavaScript?

    The cp.runJavascript needs another "_self" argument, but it still does not work.

    The Advanced "showMe" action name exists in the IDE, not in the output of HTML5. The only thing that exists in the code is all JavaScript or cpCommands that make up the tip action, that is to say:

    CP. Show ("Something");

    cp.runJavascript ("someFunction () ', '_self'")

    cp.jumpToNextSlide)

    You are on the right track by using the "oca", but does not have the implementation. You have to find the item that has the specific property "oca".

    cp.runJavascript (cp.model.data.slideID.elementID.oca, "_self");

    If you have a button called 'cc_btn' which is configured to display the rest of the project, it would be:

    cp.runJavascript (cp.model.data.cc_btn.oca, "_self");

    It all depends on what is triggering the fast action. You will first need to obtain the id of the slide, once you have that you can browse the 'if' to get the item and property ownership "oca".

  • Page cancel submission using Javascript not dynamic Action

    I build features requiring little Javascript to validate the page before being submitted and prevent sending if there are errors in treatment.  I got this job with the help of dynamic action that fires before Page submit to a condition of firing of Javascript and an action to cancel the event, and it works fine.  However, the intention is to use this feature in several pages and it would be nicer if the functionality could be implemented in Javascript (for example, the code in the page template).

    According to https://api.jquery.com/submit/ this should be possible:

    $( "#wwvFlowForm" ).submit(function( event ) {

      alert( "Handler for .submit() called." );

      event.preventDefault();

    });

    However, I can't make it work in the APEX.  Can anyone suggest a solution?

    during the presentation of the page using apex.submit () (which is probably all cases?), you can use submit it before event like this:

    $(document).on("apexbeforepagesubmit", function(){ alert("before submit"); apex.event.gCancelFlag = true; });
    

    You can find this by looking at the source code:

    page.js

    // Trigger a 'Before Page Submit' event for the document, and pass the current request value for convenience.
    lCancelSubmit = event.trigger( apex.gPageContext$, "apexbeforepagesubmit", lOptions.request );
    // Cancel submission, if the apex.event.trigger function says so (with a true return value).
    if ( !lCancelSubmit ) {
    

    Event.js

    event.trigger = function( pSelector, pEvent, pData ) {
    
          // Default to false, event cancelling should only be done if an event handler says so
          // (by setting this flag to true).
          event.gCancelFlag = false;
    
          // Trigger event
          $( pSelector, apex.gPageContext$ ).trigger( pEvent, pData );
    
          // Return the value of gCancelFlag
          return event.gCancelFlag;
      };
    })( apex.event, apex.jQuery);
    

    Also found in dynamic_actions.js

    /**
     * cancelEvent function
     * Cancels event processing...
     * */
    da.cancelEvent = function() {
    
        /* Set cancel flag in the apex.event namespace to true. This value can be used to cancel subsequent
           processing, such as in page submission to stop the page from being submitted. */
        apex.event.gCancelFlag = true;
    
        /* Set cancel actions flag in apex.event namespace to true. This value is used in dynamic
           actions processing to stop further actions firing. */
        da.gCancelActions = true;
    
        /* Call the event method stopImmediatePropagation. This prevents any event handlers
           bound to the current event from executing. It also calls stopPropagation to stop the
           event from bubbling up the DOM (if it supports bubbling), so any event handlers bound
           to ancestral DOM elements will not fire either. */
        this.browserEvent.stopImmediatePropagation();
    
        /* Call the event method preventDefault. This prevents the default behaviour of the
           event (for example prevents going to the URL of a link, if a link is clicked). */
        this.browserEvent.preventDefault();
    }; // cancelEvent
    

    It could change, but it would be weird. It works, but it is not really written in other than the one in the code documentation.

    Notice also that the event 'submit' is pulled (it would be strange if she didn't)

    //Submit the current form, defaults to "wwv_flow" if not provided in option map
    $( "form[name=" + lOptions.form + "]", apex.gPageContext$ ).trigger( "submit" );
    

    Thus, binding to 'submit' will work, and work, but note that Event.preventDefault () may NOT work depending on the browser used. For me it works in FF, does not check the others. You can try to use "return false;" instead.

  • A custom in advanced actions effect switches back to default

    The old custom effects and advanced actions...

    I am trying to apply an effect to an object:

    Screen Shot 2015-05-15 at 09.29.27.png

    But when I update the action, it changes by default:

    Screen Shot 2015-05-15 at 09.29.46.png

    I tried to change the order as suggested by jmblackman in this thread: https://forums.adobe.com/thread/950517?q=advanced%20action%20custom%20effect

    But then the object will appear just without effect.

    Customization, I've done was the duration of the effect. So I don't really know if it really changes the default effect or that the duration of a custom effect is 1 second that I remember reading somewhere.

    Is there someone out there who controlled this part of Captivate?

    I use 8 Captivate by the way.

    Thank you

    Indeed, it is the flow of tedious work to make it appear in the list. But 0, 7secs won't work, too short. I really hope one day these limitations for effects by advanced actions will be done with.

  • Almost there with advanced Actions

    I found a way... I think so.. I could create my Quiz in Captivate, click a button, submit 5 questions in this section, return to the main slide and have this section button grayed out, click the next, etc.

    I found this article in which Mark (I guess that Fletcher) created an example with doors and I did the same thing, I had images greyed out under the buttons and then hid the buttons on a scenario.  It works... almost.

    I created variables user for each button and set the values to 0.  Once a section is selected and questions answered, on the slide of congratulations (they are children) following, I put the corresponding variable to 1.  Then drag on output, returned to the home page where the slopes of script on slide enter and the parts to the answer buttons are hidden, showing through the greyed out image.

    My problem is that the article no matter what is answered first works very well.  Back to section is good, but when you click the second button, you get the launch for this article page and clicking on the button continue does nothing while the slide is sitting there and just does nothing which I suppose is 3 seconds can I substitute because I have objects on the page.  Then he moves to the slide section completed without ever presenting the question.

    It works this way if I try to respond to the first section first and then the second or I first answer to another and then try the first one second.  Whoever I do first works. Whichever one I second does not work.

    I wish I could copy the script in here, but of course, I can't that Captivate is not select, copy of the script window.

    Any ideas?  This is the example that Marc and his works, each time, but of course, he won't transparent intermediaries in the meantime, I found... which, IMO, should not be a factor.

    http://elearninglive.com/wordpress/2009/01/tracking-user-progress-in-Captivate-4-using-var iables actions.

    Any thoughts greatly appreciated!

    Nancy

    Hi Nancy,.

    I think I wasn't clear enough. Lets consider situation below

    1 quiz has 10 question slides and a slide of result

    2. you have a House slide that allows you to access a particular section and take questions in there.

    3. you jump to slide home after taking the questions in a section

    4. you select again the section to go to and take Questions in it.

    In the above situation after that step 3, Captivate will consider that you have completed the questionnaire as you jump to a slide that overflows the Quiz rank (1st question slide and blade of result)

    In step 4, all Questions will be greyed out you already took the Quiz.

    It is also designed as a Cp because it supports only one quiz per project. This isn't a new feature introduced in Cp4.

    To work around the problem, you can try variables and advanced actions. In this case the increase in the number of Quiz attempts to Quiz--> Quiz preferences--> pass/fail. You must also calculate the score for yourself and replace the result with your personal results slide blade.

    I hope this helps.

    Thank you

    Ravi

  • JavaScript for loop to execute Advanced Actions - execute Javascript does not?

    I use a loop to check the value of a Cookie.  When I add this using Execute Javascript it works fine but I want to run with certain other actions, if I want to use Of execute advanced Actions. When I add this coded to an action to run Javascript in the breast to perform advanced Actions code disappeared if I open the Script window again once.  I try to remove the code for loop in bold below and then the remaining code remains.  So I think that the problem must be with the loop for, but I don't see anything wrong with this code and I have, as I said that this code works fine if I use Javascript to run on its own. I've attached a video clip below to show what I mean.

    var task1_value = readCookie ("task1");

    function readCookie (name) {}

    var nameEQ = name + '=';

    var CA = document.cookie.split(';');

    for (var i = 0; i < ca.length; i ++) {}

    var c = ca [i];

    even if (c.charAt (0) ==' ') c = c.substring(1,c.length);

    If (c.indexOf (nameEQ) == 0) return c.substring (nameEQ.length, c.length);

    }

    Returns a null value.

    }

    I found that window JavaScript of CP does not like loops.

    Your best bet is to put the function in an external JS file from the top of the page. I always run scripts in an external file. Really helps debug that you do not have to republish Captivate. Just change your code and refresh the browser. If you use external file you can store all your functions there.

    I would also look into using the local storage instead of cookies. Very easy to implement and you can store a ton of information.

    Local storage - dive into HTML5

  • use javascript advanced action to advance to the next page of parent window?

    Hello

    I'm looking using Captivate quiz in some provided training based on html. I have this type of structure:

    Page html with a conceptual content.

    Html b. with a conceptual content page

    Page c. html which displays a Captivate quiz question

    Html d. with a conceptual content page

    When the user finishes the test successfully at point C, I want to automatically advance to the next page of the html (D).  I'm assuming I could use a tip action in the Quiz properties. In other words, 'the success = Execute advanced Actions', then to run our javascript gotoNextPage() function.  But it does not work. Is there a trick to do something like that?

    Thank you!

    If you test this output on your computer, try to upload to a web server and test from there.

    I find a lot of actions executed in Captivate JavaScript works only when the content is served from a Web server.

  • fatal error when you access preferences, advanced actions, project preview and other functions.

    I get a fatal error when you access preferences, advanced actions, draft preview and other functions. I reinstalled, reimagee my machine according to different scenarios and may not get this problem solved I use version 9.0.1.320 is there a fix or a solution to this problem.  Thank you

    Try to update your PC version to 9.0.2

Maybe you are looking for