ErwinHaasnoot / QRTEngine

Qualtrics Reaction Time Engine (QRTEngine) is an extension to Qualtrics which allows researchers, but generally any who are interested, to easily build behavioural online experiments.
16 stars 1 forks source link

QRTLib.waitForKey Issue #45

Open evapoort opened 9 years ago

evapoort commented 9 years ago

Hello,

This isn't really a problem, but I think it's good to be aware of this issue. I've noticed something weird going on with the QRTLib.waitForKey function. (If you're not familiar with it, you can see a description of the function here: http://www.qrtengine.com/tutorials/basic-tutorials/finishing-up-your-experiment/.) If I set this to use one of the same keys that are allowable responses during a QRTE block, the data for the QRTE trials where that key is used isn't saved.

An example. I used QRTLib.waitForKey(this, 'j') for a non-QRTE question right before a QRTE block of trials, where I used QRTE.setConfig('item', 'allowable', 'jk'). I then noticed that only the trials with "k"-responses were being saved, not the trials with "j"-responses. If I use QRTLib.waitForKey(this, 's'), trials with "j"-responses as well as trials with "k"-responses are saved.

Also, it seems the waitForKey is set as a global variable now (it wasn't before the Qualtrics update). In my experiment, after most QRTE blocks I've got a break, which is a non-QRTE question that uses Qualtrics's timing functionality and is set to disable submit for 10 seconds. However, when I press the waitForKey, the experiment continues on to the next screen. I don't think it's likely my participants will figure this out, so it isn't really a problem, but again, I think it's important to be aware of this.

Here (https://drive.google.com/folderview?id=0B6LTuoXY4nKMTk1uMTRxWE9FWU0&usp=sharing) I've got a minimal example of a lexical decision task with two blocks of six stimuli. It currently says in the JavaScript for the "intro" question and the "first" question QRTLib.waitForKey(this, 'j') and isn't saving trials with "j"-responses, but when you set the "j" to "s" in the waitForKey function, it does save them properly. You can also see that it is possible to use the "j"-key to force the experiment to continue when you see the break, which isn't supposed to be possible, but is manageable.

I hope this information helps other people!

Best wishes, Eva