Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:create:questions:assignment [16.05.2020 17:55] adminde:create:questions:assignment [27.07.2022 14:35] (aktuell) admin
Zeile 92: Zeile 92:
 Die JavaScript-Funktion ''setCallbackSelect()'' (siehe oben) ist primär für die Filterführung ausgelegt. Daneben unterstützt die Zuordnungsaufgabe noch Ereignisse (Events), mit denen JavaScript direkt eingreifen kann. Die folgenden Ereignisse werden vom Container der Frage ausgelöst: Die JavaScript-Funktion ''setCallbackSelect()'' (siehe oben) ist primär für die Filterführung ausgelegt. Daneben unterstützt die Zuordnungsaufgabe noch Ereignisse (Events), mit denen JavaScript direkt eingreifen kann. Die folgenden Ereignisse werden vom Container der Frage ausgelöst:
  
-  * ''fixation'' -- Zwischen zwei Stimuli (Items) wird eine Pause gesetzt, welche z.B. ein Fixationskreuz anzeigt. Dieses Ereignis wird nur ausgelöst, wenn zwischen den Stimuli eine Pause eingestellt wurde. In der ''detail''-Eigenschaft des Ereignis stehen folgende Attribute zur Verfügung:+  * ''fixation'' -- Zwischen zwei Stimuli (Items) wird eine Pause gesetzt, welche z.B. ein Fixationskreuz anzeigt. Dieses Ereignis wird nur ausgelöst, wenn zwischen den Stimuli eine Pause eingestellt wurde. In der ''detail''-Eigenschaft des Ereignises stehen folgende Attribute zur Verfügung:
     * ''evt.detail.question'' -- Kennung der Frage     * ''evt.detail.question'' -- Kennung der Frage
     * ''evt.detail.item'' -- Kennung (ID) des Items, welches nach der Pause angezeigt wird     * ''evt.detail.item'' -- Kennung (ID) des Items, welches nach der Pause angezeigt wird
Zeile 114: Zeile 114:
 Mit der Funktion ''setPrimeTimes()'' kann die Darbietungsdauer für Primes (sofern diese für Stimuli/Items definiert wurden) individuell festgelegt werden. Mit der Funktion ''setPrimeTimes()'' kann die Darbietungsdauer für Primes (sofern diese für Stimuli/Items definiert wurden) individuell festgelegt werden.
  
 +Mit der Funktion ''setPauseTimes()'' kann die Dauer der Pause zwischen den Items individuell festgelegt werden, in welcher ggf. die Fixation angezeigt wird.
  
-==== Beispiel: Audio abspielen ====+Die Funktion ''selectOption()'' löst dieselbe Reaktion aus wie der Klick auf eine Antwortoption. In Klammern wird die Nummer der Option (beginnend mit 1) eingetragen. 
 + 
 + 
 +==== Audio abspielen ====
  
 Falls die Stimuli (auch) eine Audio-Datei enthalten, kann diese über das ''present''-Ereignis zum richtigen Zeitpunkt abgespielt werden. Stimuli 1 und 2 hätte beispielsweise folgenden Inhalt: Falls die Stimuli (auch) eine Audio-Datei enthalten, kann diese über das ''present''-Ereignis zum richtigen Zeitpunkt abgespielt werden. Stimuli 1 und 2 hätte beispielsweise folgenden Inhalt:
Zeile 180: Zeile 184:
 <script type="text/javascript"> <script type="text/javascript">
 window.addEventListener("load", function() { window.addEventListener("load", function() {
-    SoSciTools.questionnaire.AB01.setPrimeTimes({+    s2.AB01.setPrimeTimes({
         1: 2000,         1: 2000,
         2: 500,         2: 500,
Zeile 186: Zeile 190:
     });     });
 }); });
-</code> 
 </script> </script>
 +</code>
  
 Falls die Anzeigezeiten für die Primes dynamisch variiiert werden sollen, kann die Liste der Prime-Anzeigedauern auch im PHP-Code erstellt und anschließend mittels Platzhalter in den JavaScript-Code übernommen werden. Der JavaScript-Code würde dabei als Text (Darstellung: "HTML-Code") mit Platzhalter (''%primeTimes%'') im Fragenkatalog abgelegt. Falls die Anzeigezeiten für die Primes dynamisch variiiert werden sollen, kann die Liste der Prime-Anzeigedauern auch im PHP-Code erstellt und anschließend mittels Platzhalter in den JavaScript-Code übernommen werden. Der JavaScript-Code würde dabei als Text (Darstellung: "HTML-Code") mit Platzhalter (''%primeTimes%'') im Fragenkatalog abgelegt.
Zeile 194: Zeile 198:
 <script type="text/javascript"> <script type="text/javascript">
 window.addEventListener("load", function() { window.addEventListener("load", function() {
-    SoSciTools.questionnaire.%question%.setPrimeTimes(%randomTimes%);+    s2.%question%.setPrimeTimes(%randomTimes%);
 }); });
 </script> </script>
Zeile 217: Zeile 221:
 </code> </code>
  
 +
 +==== Zeitbegrenzung variieren ====
 +
 +In der Zuordnungsaufgabe kann eine //Zeitbegrenzung pro Stimulus// definiert werden. Wenn die Befragte innerhalb dieses Zeitraums keine Antwort wählt, wird das Item übersprungen. Diese zeitliche Begrenzung gilt zunächst für alle Items der Frage.
 +
 +Mit der JavaScript-Methode ''setTimeouts()'' kann die Zeitbegrenzung für jedes Item individuell angepasst werden. Die Syntax entspricht jener von ''setPrimeTimes()''.
 +
 +Das folgende JavaScript legt für das dritte Item in der Zuordnungsaufgabe "AB01" eine Zeitbegrenzung von 1200 Millisekunden (ms) fest und für das fünfte Item eine Zeitbegrenzung von 2000 ms.
 +
 +<code html>
 +<script type="text/javascript">
 +window.addEventListener("load", function() {
 +    s2.AB01.setTimeouts({
 +        3: 1200,
 +        5: 2000
 +    });
 +});
 +</script>
 +</code>
 +
 +===== Automatischer Start =====
 +
 +Es gibt Situationen, in welchen der der Wechsel vom Einführungstext zum ersten Stimulus zeitgesteuert erfolgen soll. Der folgende JavaScript-Code löst diesen Wechsel 2 Sekunden nach dem vollständigen Laden der Seite aus. Die Kennugn "AB01" muss gegen die Kennung der Zuordnungsaufgabe getauscht werden.
 +
 +<code javascript>
 +window.addEventListener("load", function() {
 +  window.setTimeout(function() {
 +    s2.AB01.selectOption(1);
 +  }, 1000);
 +});
 +</code>
  
  
de/create/questions/assignment.txt · Zuletzt geändert: 27.07.2022 14:35 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki