Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

0 votes

Gibt es eine Möglichkeit die Zeitmessung nicht nur auf Seitenebene zu haben, sondern auch auf einem Variablen Level?

Also, nach wieviel Sekunden wurde eine Variable befüllt (bzw. die Frage beantwortet)?

Beste Grüße

in SoSci Survey (dt.) by s109993 (6.2k points)

1 Answer

+1 vote
 
Best answer

Diese Funktion hatten wir tatsächlich 2014 implementiert, aber nicht dokumentiert. Fun Fact: Gerade letzte Woche stieß ich darauf, weil das gleiche Funktion in einem anderen Projekt benötigt wurde :)

Hier ein Beispiel-Code:

<script type="text/javascript" src="../script/LatencyTimer.js"></script>
<script type="text/javascript">
var stopWatch = new LatencyTimer();

for (var item=1; item<=16; item++) {
    var itemS = item.toString();
    if (itemS.length < 2) {
        itemS = "0"+itemS;
    }
    stopWatch.registerRadio("ES02_"+itemS, "ES17_"+itemS, false);
}
</script>

Mit diesem HTML-/JavaScript-Code werden die Antwortzeiten für 16 Items der Skalen-Frage ES02 aufgezeichnet und in die internen Variablen ES17_xx gespeichert.

Die wesentliche Funktion hierbei ist stopWatch.registerRadio(). Diese Funktion ist auf Skalenfragen und einfache Auswahlfragen anwendbar. Für Schieberegler gibt es eine andere Funktion registerSlider(), für Mehrfachauswahl-Fragen ist die Umsetzung etwas komplizierter. stopWatch.registerRadio() erwartet folgende 3 Parameter:

  1. Kennung der Auswahlfelder (i.d.R. die Item-Kennung)
  2. Kennung der internen Variable
  3. Eine Angabe (true oder false) ob auch der erste Klick auf der Seite gespeichert werden soll

Die internen Variablen müssen Sie vorab im Fragenkatalog anlegen.

Die Funktion zeichnet die Zeit auf, die seit der letzten Auswahl einer Antwort auf der Seite vergangen ist. Wenn eine AUswahl geändert wird, wird der Code -6 aufgezeichnet. Beim Schieberegler kann man dies so anpassen, dass stattdessen die Zeiten addiert werden.

by SoSci Survey (246k points)
selected by s109993
Klasse Sache, werde ich sofort versuchen einzubauen. Falls es wo klemmen sollte, melde ich mich nochmal.
Bitte. Je mehr Fragen Sie haben, desto besser kann ich die Funktion demnächst mal in der Anleitung erklären ;)
Das ist eventuell doch ein Spezialfall. Ich habe für den ersten Parameter keine Item- Kennung. Ich nehme Wörter aus einem Text, die per klick auf das Wort in der internen Variable abgespeichert werden.
Da das etwas abstrakt ist, hab ich Ihnen hier den Pretest Link: https://ofb.iea-hamburg.de/mez_online/?act=IRNndGwfGE7zUiYBlD6Pl7aX

Es soll quasi die Zeit genommen werden, jedesmal wenn auf eines der fett gedruckten Wörter geklickt wird.
Ich denke, dafür können wir im JavaScript problemlos noch ein bisschen was ergänzen. Allerdings muss ich erstmal herausfinden, wie wir die Klick-Ereignisse am besten auslösen.

Wenn ich mich richtig an die andere Frage erinnere, erlauben Sie nur die Auswahl eines Wortes. Was soll denn mit der Zeitmessung passieren, wenn nacheinander mehrere Wörter angeklickt werden?
Wie in dem Pre-Test Link zu sehen, kann pro 3er Auswahl nur ein Wort ausgewählt werden. Falls innerhalb der 3er Auswahl ein Wort geändert wird, soll die Zeit der letzten Änderungen abgespeichert werden.

Es handelt es sich allerdings nicht mehr um das Script, welches ich hier mal im Forum gepostet habe. Falls Sie das JS und HTML Script benötigen, kann ich das natürlich posten. Es könnte allerdings etwas viel für die Kommentar Sektion sein.

Danke für ihre Unterstützung
>  Falls innerhalb der 3er Auswahl ein Wort geändert wird, soll die Zeit der letzten Änderungen abgespeichert werden.

Sicher? Wenn sich jemand verklickt und das korrigiert, ist das eine sehr kurze Zeit.

>  Falls Sie das JS und HTML Script benötigen, kann ich das natürlich posten. Es könnte allerdings etwas viel für die Kommentar Sektion sein.

Das sehe ich auch so - lieber in einer neuen Frage :)
> Sicher? Wenn sich jemand verklickt und das korrigiert, ist das eine sehr kurze Zeit.

Würde dann nicht als Ausgangspunkt für die Korrektur der Start der Seite sein, und nicht der erste Klick auf ein Wort?

Also wenn bei der ersten Gruppe auf ein Wort geklickt wird, wird die Zeit gespeichert (z.B. 20 Sekunden). Etwas später korrigiert der Teilnehmer das Wort (z.B. 40 Sekunden nach dem Seitenaufruf). Die Zeitvariable würde dann für die erste Wortgruppe 40 Sekunden beinhalten, da die 20 Sekunden überschrieben wurden.

Die Skripte liefere ich Ihnen gerne später in einer neuen Frage.
> Würde dann nicht als Ausgangspunkt für die Korrektur der Start der Seite sein, und nicht der erste Klick auf ein Wort?

Das kommt darauf an. Ich dachte, Sie möchten die Zeit zwischen (!) den Klicks. Wenn Sie die absolute Zeit seit dem Laden haben möchten, ist es einfacher.
Ich habe versucht, das auch in meinen Fragebogen einzuprogrammieren. Bei mir kommt, wenn ich dann in die Fragebogenanischt gehe: "No buttons found for Item EI05_01". Diese Frage ist bei mir eine Einfachauswahl? Wo liegt der Fehler? Danke für die Hilfe schon mal im Voraus :)
Bitte legen Sie eine neue Frage hier im Online-Support an (gerne auch über den Knopf "related question" oben) und posten Sie dort, welche Fragen Sie verwenden, wie diese heißen, wie Ihr Code aussieht - und bei JavaScript-Anwendungen auch gerne einen Pretest-Link direkt (!) zur betroffenen Seite im Fragebogen.
...