0 votes
in SoSci Survey (dt.) by s090096 (150 points)

Im April hatte ich Sie gefragt, wie man verhindern kann, dass Teilnehmer*innen (TN) durch wiederholtes klicken auf "weiter" Seiten überspringen. In meinem Design sollen TN den Klang mehrerer akustischer Stimuli anhand von neun bi-polaren Items bewerten (Items sind für alle Stimuli gleich). Ich habe dafür einen Loop eingerichtet, der die Seite immerwieder mit einem neuen Stimulus aufruft. Offensichtlich dauert es manchen TN teilweise zu lange, bis sich nach dem Klick auf "weiter" die neue Seite aufgebaut hat, so dass sie wiederholt auf "weiter" klicken, was dazu führt, dass mehrere Seite übersprungen werden.

Sie hatten mir den Tipp gegeben, den "weiter" Knopf einfach für ein paar Sekunden auszublenden. Leider hatte ich mit dieser Methode aber keinen Erfolg. Das Problem scheint zu sein, dass der "weiter" Knopf nach dem Klicken zunächst stehenbleibt und "aktiv" ist, bevor die Seite neu aufgebaut wird. Bis also durch das JavaSkript der "weiter" Knopf ausgeblendet wird, vergehen erst ein paar Sekunden, in denen die TN wiederholt auf den "weiter" Knopf klicken können und so mehrere Seiten (bzw. Stimuli) überspringen. Lässt sich das irgendwie verhindern? Für einen Hinweis wäre ich Ihnen sehr dankbar.

1 Answer

0 votes
by SoSci Survey (328k points)

Offensichtlich dauert es manchen TN teilweise zu lange, bis sich nach dem Klick auf "weiter" die neue Seite aufgebaut hat, so dass sie wiederholt auf "weiter" klicken, was dazu führt, dass mehrere Seite übersprungen werden.

Der erneute Klick führt nur dann auf die übernächste Seite, wenn es sich bereits um den Weiter-Knopf der nächsten Seite handelt. Ich würde vermuten, dass es den Befragten eher nicht bewusst ist, dass sie schon auf der nächsten Seite sind. Denn wie Sie schon schreiben, ändert sich optisch ja nichts.

Eventuell wäre also ein Fixationskreuz, welches z.B. für 500ms auf der Seite zu sehen ist, eine sinnvolle Lösung, um die neue Seite "sichtbar" zu machen.

Bis also durch das JavaSkript der "weiter" Knopf ausgeblendet wird, vergehen erst ein paar Sekunden, in denen die TN wiederholt auf den "weiter" Knopf klicken können

Es kommt darauf an, wann und wie man den Weiter-Knopf ausblendet. Wenn man mit window.addEventListener("load", ...) arbeitet, dann wird der Knopf evtl. erst ausgeblendet, wenn die Audio-Datei geladen ist. Das wäre (eben wegen dieser Ladezeit) zu spät.

Wenn Sie hingegen das SoSciTools.submitButtonsHide() verwenden, sollte der Knopf eigentlich direkt nach dem Laden der neuen Seite (also dann, wenn er zur übernächsten Seite führen kann) verschwinden. Sie können aber noch ein wenig nachhelfen:

pageCSS('
    #buttonsAuto,
    #buttonNext,
    #submitNext {
        display: none;
    }
');

Hilft das schonmal? Können Sie den "versehentlichen" Weiter-Klick damit noch replizieren?

Generell könnten Sie mit ein wenig PHP-Code (und loopToPage() statt loopPage()) natürlich dafür sorgen, dass man im Polprofil min. ein paar Items beantworten muss, und sonst die Seite mittels repeatPage() einfach wiederholen.

by s090096 (150 points)
Vielen Dank für Ihre ausführliche Antwort. Aber ich habe mich offensichtlich nicht klar ausgedrückt. Durch das wiederholte Klicken auf "weiter" wird nicht zur "übernächsten" Seite gesprungen. Wie oben geschrieben, wird immer wieder über die gleiche Seite geloopt. Die Seite bleibt immer die gleiche, nur der Stimulus ändert sich bei jedem Durchlauf. Die Abfolge, in der die Stimuli gezeigt werden, ist in einer Datenbank hinterlegt. In einem Skript wird bei jedem Neuaufruf der Seite (die ja über einen Loop immer wieder aufgerufen wird) aus der Datenbank ausgelesen, welcher Stimulus als nächstes gezeigt werden soll. Diese etwas komplizierte Konstruktion war nötig, weil die Stimuli pro Teilnehmer in einer anderen, aber fest vorgegebenen (also nicht zufälligen) Reihenfolge angezeigt werden müssen. Durch das wiederholte klicken auf "weiter" wird das Skript immer wieder aufgerufen, so dass das Skript einen weiteren Durchlauf höher zählt und zum nächsten Stimulus überspringt. Die von Ihnen vorgeschlagenen Lösungen habe ich größtenteils schon ausprobiert (z.B. eine Zwischenseite einfügen von der dann über goToPage() wieder zurück zur Befragungsseite gegangen wird). Außerdem verwende ich SoSciTools.submitButtonsHide(), was aber leider auch keinen Unterschied macht. Ich bin langsam ratlos, was ich noch machen kann.
by SoSci Survey (328k points)
> Die Seite bleibt immer die gleiche, nur der Stimulus ändert sich bei jedem Durchlauf.

Das klingt fast so, als sollte es so sein ;)

> Die Abfolge, in der die Stimuli gezeigt werden, ist in einer Datenbank hinterlegt. In einem Skript wird bei jedem Neuaufruf der Seite (die ja über einen Loop immer wieder aufgerufen wird) aus der Datenbank ausgelesen, welcher Stimulus als nächstes gezeigt werden soll.

Klingt jetzt nicht so kompliziert.

> Durch das wiederholte klicken auf "weiter" wird das Skript immer wieder aufgerufen, so dass das Skript einen weiteren Durchlauf höher zählt und zum nächsten Stimulus überspringt.

Ich hoffe sehr, dass Sie dafür mit loopPage() oder loopToPage() arbeiten. Alles andere ist sehr fehleranfällig.

> z.B. eine Zwischenseite einfügen von der dann über goToPage() wieder zurück zur Befragungsseite gegangen wird

Vermeiden Sie goToPage() in Schleifen. Generell.

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

...