From fcd8dd771cfeeb73847aecd40e2a63a7cfe649c9 Mon Sep 17 00:00:00 2001 From: raynatang <56328677+raynatang@users.noreply.github.com> Date: Fri, 9 Aug 2024 19:18:02 -0500 Subject: [PATCH] Add real-time value display feature to plugin-image-slider-response Added real-time value display feature to plugin-image-slider-response: if the parameter value_display is set as true, the slider's value will be displayed in real-time below the slider as participants adjust it. Before participants adjust the slider, the displayed value will be the slider_start value --- packages/plugin-image-slider-response/src/index.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/plugin-image-slider-response/src/index.ts b/packages/plugin-image-slider-response/src/index.ts index 2e5c77aecd..6fc184d2f6 100644 --- a/packages/plugin-image-slider-response/src/index.ts +++ b/packages/plugin-image-slider-response/src/index.ts @@ -108,6 +108,11 @@ const info = { type: ParameterType.BOOL, default: true, }, + /** If true, the slider's value will be displayed in real time below the slider. */ + value_display: { + type: ParameterType.BOOL, + default: true, + }, }, data: { /** The path of the image that was displayed. */ @@ -222,7 +227,13 @@ class ImageSliderResponsePlugin implements JsPsychPlugin { trial.max + '" step="' + trial.step + - '" id="jspsych-image-slider-response-response">'; + '" id="jspsych-image-slider-response-response" '; + if (trial.value_display) { + html += 'oninput="this.nextElementSibling.value = this.value">'; + html += "" + trial.slider_start + ""; + } else { + html += ">"; + } html += "
"; for (var j = 0; j < trial.labels.length; j++) { var label_width_perc = 100 / (trial.labels.length - 1);