Erstellen Sie im Bildschirm “Variablen“ eine Variable namens „myVar“ und weisen Sie der Variablen den Wert “NYC“ zu.
Einführung
Mit Adobe Captivate können Sie leistungsstarke und teilnehmerfreundliche Inhalt mithilfe der neuen JavaScript-Benutzeroberfläche erstellen. Diese Funktion bietet eine gemeinsame Plattform für die Ausführung von JavaScript-Aktionen in Ihren Projekten und sorgt für leistungsfähigere Interaktivität.
Jetzt können Sie kleinere JavaScript-Snippets schreiben, um auf unterschiedliche Variablen in den Inhalten zuzugreifen. Sie können verschiedene Ereignisse, die von den Inhalten generiert wurden, abonnieren.
Sie können die JavaScript-APIs auf zwei Arten verwenden:
Führen Sie JavaScript-Aktionen im Projekt aus.
Fügen Sie JavaScript-Code der veröffentlichten HTML zur Laufzeit hinzu.
Adobe Captivate unterstützt die folgenden Objekte:
- cpAPIInterfac: Enthält Dienstprogrammfunktionen, die häufig zum Ausführen von JavaScript-Aktionen erforderlich sind.
- cpAPIEventEmitter: Sie können verschiedene Ereignisse, die von den Inhalten generiert wurden, abonnieren oder das Abonnement stornieren.
- cp: Enthält Dienstprogramme zum Auslösen von Aktionen auf Objektebene.
cpAPIInterface
cpAPIEventEmitter ist ein Objekt, das im Fensterbereich verfügbar ist. Um auf das Schnittstellenobjekt zuzugreifen, verwenden Sie window.cpAPIEventEmitter.
Die folgenden Methoden werden in Adobe Captivate unterstützt:
Methode | Beschreibung | Parameter | Verwendung |
getVariableValue | Gibt den Wert der angegebenen Variable zurück. |
window.cpAPIInterface. getVariableValue ("varOne"); | |
setVariableValue |
Legt den Wert eines Variablennamens mit dem vorgegebenen Wert fest. | variableName:String |
window.cpAPIInterface.setVariableValue ("cpQuizInfoStudentID", "John"); |
Abspielen | Spielt ein Projekt ab | window.cpAPIInterface. Abspielen(); | |
pause | Hält ein Projekt an | window.cpAPIInterface.pause(); | |
next | Zur nächsten Folie wechseln | window.cpAPIInterface.next(); | |
previous | Zur vorherigen Folie | window.cpAPIInterface.previous(); | |
getDurationInSeconds | Gibt die Gesamtdauer des Projekts in Sekunden zurück. |
window.cpAPIInterface.getDurationInSeconds(); | |
getEventEmitter | Gibt den Ziehpunkt an das cpAPIEventEmitter-Objekt zurück. |
window.cpAPIInterface.getEventEmitter(); | |
getCurrentSlideIndex | Gibt den aktuellen Folienindex des Projekts zurück. | window.cpAPIInterface.getCurrentSlideIndex(); |
Veraltete Methoden
- getCurrentFrame
- GetDurationInFrames
Beispiel 1
In diesem Beispiel erstellen wir eine Variable mithilfe des Workflows zum Erstellen von Variablen. Dann verwenden wir die neue Variable, ändern ihren Wert und geben den neuen Wert als Warnmeldung aus.
Führen Sie die folgenden Schritte aus, um den Variablenwert festzulegen und abzurufen:
-
-
Fügen Sie in diesem Projekt eine Schaltfläche auf der Bühne hinzu und wählen Sie im rechten Bedienfeld Interaktionen.
-
Wählen Sie im Bereich Aktion die Option Mehr > JavaScript ausführen aus. Geben Sie folgenden Code ein:
window.cpAPIInterface.setVariableValue("myVar","BLR");
var getVar=window.cpAPIInterface.getVariableValue("myVar");
alert(getVar);
Das haben wir gemacht:
Zeile 1: Wir haben den Wert der Variablen „myVar“ in den neuen Wert „BLR“ geändert. Wir haben die setVariableValue-Methode verwendet, um den Wert zu ändern.
Zeile 2: Wir haben die Methode getVariableValue verwendet, um den neuen Wert abzurufen, den wir in der vorherigen Zeile festgelegt haben. Dann haben wir den Wert in einer neuen Variablen gespeichert, getVar.
Zeile 3: Der neue Wert wird in einem Meldungsfeld angezeigt.
-
Wählen Sie Fertig.
-
Zeigen Sie das Projekt in der Vorschau an und wählen Sie die Schaltfläche. Das Meldungsfeld wird als Popup-Fenster angezeigt.
Beispiel 2
In diesem Beispiel verwenden wir eine Systemvariable „Date.DateMMDYY“, um das aktuelle Datum zu drucken. Der Prozess bleibt wie im vorherigen Beispiel dokumentiert.
Geben Sie im JavaScript-Editor den folgenden Code ein:
dateVar=window.cpAPIInterface.getVariableValue("Date.DateMMDDYY");
alert(dateVar);
Wenn Sie das Projekt in der Vorschau anzeigen und die Schaltfläche auswählen, wird ein Meldungsfeld mit dem aktuellen Datum angezeigt.
cpAPIEventEmitter
cpAPIEventEmitter ist ein Objekt, das im Fensterbereich verfügbar ist. Um auf das Schnittstellenobjekt zuzugreifen, verwenden Sie window.cpAPIEventEmitter.
Folgende Methoden werden unterstützt:
Name | Beschreibung | Parameter | Verwendung |
---|---|---|---|
EventListener hinzufügen |
Fügt eine Ereignis-Listener-Funktion einem bestimmten Ereignis hinzu. |
|
|
EventListener entfernen |
Entfernt die Ereignis-Listener-Funktion für ein bestimmtes Ereignis. |
|
|
Unterstützte Ereignisse
Liste von Ereignissen:
Name | Beschreibung | Ereignisdaten | Enumerationen |
---|---|---|---|
CPAPI_SLIDEENTER |
Informiert darüber, dass sich der Film auf einer neuen Folie befindet. | slideNumber=NUMBER; frameNumber=NUMBER; (Veraltet) lcpversion=STRING; (Nicht unterstützt) |
|
CPAPI_SLIDEEXIT |
Informiert darüber, dass der Film eine Folie verlässt. | slideNumber=NUMBER; frameNumber=NUMBER; (veraltet) lcpversion=STRING; (nicht unterstützt) percentageSlideSeen= |
|
CPAPI_ STARTPLAYBARSCRUBBING |
Informiert darüber, dass Benutzer(innen) im Film mithilfe der Wiedergabeleiste suchen. | Nicht unterstützt | |
CPAPI_ ENDPLAYBARSCRUBBING |
Informiert darüber, dass Benutzer(innen) nicht mehr mithilfe der Wiedergabeleiste suchen. | Nicht unterstützt | |
CPAPI_INTERACTIVEITEM | Informiert darüber, dass Benutzer(innen) eine Interaktion mit einem interaktiven Element ausgeführt haben. | frameNumber=NUMBER; (veraltet) includedInQuiz=BOOLEAN; (Nicht unterstützt) issuccess=BOOLEAN; (Nicht unterstützt) itemname=STRING; objecttype=NUMBER; questioneventdata= [object Object]; (Nicht unterstützt) slideNumber=NUMBER; |
|
CPAPI_MOVIEPAUSE | Informiert darüber, dass der Film angehalten wurde. | ||
CPAPI_MOVIERESUME | Informiert darüber, dass der Film an der angehaltenen Stelle wieder fortgesetzt wurde. | ||
CPAPI_MOVIESTART | Informiert darüber, dass der Film gestartet wurde. | ||
CPAPI_MOVIESTOP | Informiert darüber, dass der Film gestoppt wurde. | (Nicht unterstützt) |
|
CPAPI_QUESTIONSKIP | Informiert darüber, dass Benutzer(innen) eine Fragefolie übersprungen haben. | correctAnswer=STRING; infiniteAttempts=BOOLEAN; interactionID=NUMBER; objectiveID=STRING; (Nicht unterstützt) questionAnswered=BOOLEAN; questionAnsweredCorrectly =BOOLEAN; questionAttempts=NUMBER; questionMaxAttempts=NUMBER; questionMaxScore=NUMBER; questionNumber=NUMBER; questionScore=NUMBER; questionScoringType= [object Object],{Name:STRING}; (Nicht unterstützt) questionType=STRING; quizName=STRING; (Nicht unterstützt) reportAnswers=BOOLEAN; selectedAnswer=STRING; slideNumber=NUMBER; |
interactionType – (Nicht unterstützt)
questionType -
questionScoringType
Unterstützte Ereignisse:
|
CPAPI_QUESTIONSUBMIT | Informiert darüber, dass der Film eine Fragefolie beantwortet hat. | correctAnswer=STRING; infiniteAttempts=BOOLEAN; interactionID=NUMBER; (Nicht unterstützt) objectiveID=STRING; (Nicht unterstützt) questionAnswered=BOOLEAN; questionAnsweredCorrectly= BOOLEAN; questionAttempts=NUMBER; questionMaxAttempts=NUMBER; questionMaxScore=NUMBER; questionNumber=NUMBER; questionScore=NUMBER; questionScoringType=[object Object],{Name:STRING}; (Nicht unterstützt) questionType=STRING; quizName=STRING; (Nicht unterstützt) reportAnswers=BOOLEAN; selectedAnswer=STRING; slideNumber=NUMBER; |
Unterstützte Ereignisse:
|
CPAPI_ VARIABLEVALUECHANGED |
Das Abonnieren dieses Ereignisses erfordert einen zusätzlichen Parameter - variableName. Nachdem das Ereignis abonniert wurde, werden alle Änderungen des Werts der bereitgestellten Variable angezeigt. |
captivateVersion=STRING; (Nicht unterstützt) |
Beispiel
Starten Sie einen Ereignisemitter für das Ereignis CPAPI_VARIABLEVALUECHANGED. Bei Auslösung wird der Status einer Optionsfeldgruppe gemeldet, d. h. ob die erste oder zweite Option ausgewählt ist.
var alertEvent = function(){alert("Variablenwert geändert")};
window.cpAPIEventEmitter.addEventListener("CPAPI_VARIABLEVALUECHANGED", alertEvent , "radioOption1");
Verwenden Sie für die Optionsfeldgruppe den unten stehenden JS-Code für die Auswahlereignisse:
Schaltfläche 1
window.cpAPIInterface.setVariableValue("radioOption1", 'Sie haben die erste Option ausgewählt');
Schaltfläche 2
var option1 = window.cpAPIInterface.getVariableValue("radioOption1");
window.cpAPIInterface.setVariableValue("radioOption1", 'Sie haben die zweite Option ausgewählt')
cp
Auslösen von Aktionen auf Objektebene. Folgende Methoden werden unterstützt:
show
hide
Beispiel
cp.hide("ss1"); // Objekt ss1 ausblenden
cp.show("ss2"); // Objekt ss2 anzeigen