问题标签 [jspsych]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
29 浏览

reactjs - react中的jspsych图片实验

为了实验目的,我试图显示图像幻灯片。图像将从我的目录中随机显示。我使用了名为 callbackImageDisplay 的插件,实验运行良好,控制台显示在某种程度上是预期的。但是当要在屏幕上显示图像时,它会出现问号。我使用了相同类型的文本 html 插件,它工作正常,但图像插件不是我所期望的。那么有没有简单的方法来显示目录中的随机图像?如果您愿意,我有指向 github 代码的链接。

Github 链接:https ://github.com/subashsubbu/React_Jspych-EXP

0 投票
0 回答
33 浏览

javascript - 随机化存储在 list.js 中的多个对象

一段时间以来一直在为此头疼。我正在处理的项目要求我从四个可能的独特动画列表中显示两个随机选择的视频,并在下一页上显示所选视频的正确相应文本描述。现在,我正在采用的方法是在我的代码之外创建一个单独的 list.js 文件,每个视频都与其对应的句子分组,但是由于我的代码现在是,我不能使用随机化函数来随机化所有对象一次。

list.js 文件。

以上是我实验中的相关代码。

0 投票
1 回答
52 浏览

image - 如何将图像添加到李克特量表?

我对 jsPsych 和一般编程都是新手。我正在尝试创建一个基于浏览器的实验,在用户屏幕上显示李克特量表以及图像。具体来说,我想衡量人们对不同颜色的看法。

我的计划是使用彩色点的图像来表示每种颜色,例如。一个红点代表红色。每当我向用户展示图像时,我希望图像附有李克特量表:“我喜欢看这种颜色”(非常不同意、不同意、中立、同意、非常同意)。因此,用户将在他们的屏幕上查看一个彩色点,在李克特量表上选择他们的答案,然后被带到一个新的网页,那里有另一个点和李克特量表,依此类推。

我知道如何使用“survey-likert”插件构建李克特量表,但我不知道如何将图像添加到量表中。我试过这段代码,但没有用:

var likert_scale=[“非常不同意”、“不同意”、“中立”、“同意”、“非常同意”];

var color_trials={ type:'survey-likert', questions:[ {prompt:"我喜欢看这个颜色。", labels:likert_scale} ], timeline:[ {stimulus:'img/red.jpeg'}, {刺激:'img/green.jpeg'},{stimulus:'img/yellow.jpeg'}, 等等,以此类推贯穿所有图像 };

(顺便说一句,上面的代码应该有缩进,但我不知道如何将它们写入 stackoverflow 文本框中。)

如果有人知道如何在 jsPsych 中将图像与李克特量表配对,您会考虑分享您对这个问题的见解吗?同样,我是编程新手,我自己也很难找到答案。

感谢您阅读这篇文章!

0 投票
1 回答
41 浏览

javascript - 如何将条件匹配技术编码到我的程序中?

我是编程新手,目前正在尝试使用 jsPsych 创建基于浏览器的行为实验。

在我的实验中,参与者首先完成一个“预试验”,他们在其中对各种图片进行评分:

然后,我使用评级将图像划分为两个条件,A 和 B。这个划分过程使用匹配,最终,获得“不喜欢”评级的图像均匀分布在条件 A 和条件 B 之间,如被评为“中性”的图像和被评为“享受”的图像。

不幸的是,我无法弄清楚如何执行此匹配过程。我尝试了各种 JavaScript 和 jsPsych 功能的许多不同组合,例如pop( )splice( )concat( )jspsych.data.get( ).select('response')等等。然而,他们都失败了。

这里有没有人有在 jsPsych 中匹配条件分配的经验,或者对如何做到这一点有任何想法?如果是这样,你会考虑在这里分享你的想法吗?我知道有一个专门针对 jsPsych 的 GitHub 论坛,但我想我也会在这里问我的问题,因为我很难找到答案。

0 投票
0 回答
47 浏览

javascript - 难以将图像分配给数组

我在运行我在 JavaScript 库 jsPsych 中编写的代码时遇到问题。该代码使用了我为我正在设计的实验而创建的自定义插件。我的插件“image-button-response-with-name”与“image-button-response”插件相同,只是它还包含一个名为“name”的参数,我可以在其中输入一个字符串来识别试验有问题。

这是我在代码中尝试做的事情:

  1. 在我的实验中,有 10 种不同食物的图像。对于 10 种食物中的每一种,都有两个图像。因此,总共有 20 张图像。这 20 张图像分为由“名称”参数(沙拉、梨等)标识的 10 个类别。

  2. 受试者以 1 - 6 的等级对每个图像进行评分(计算机将其理解为 0 - 5 的响应等级)。

  3. 计算机从评分试验中收集数据,并识别使用同一类别图像的试验。换句话说,计算机会识别出 10 组试验:沙拉试验、梨试验等。

  4. 对于每个试验类别,计算机汇总试验的响应。例如,如果受试者在第一次沙拉试验中选择“1”,在第二次沙拉试验中选择“3”,那么计算机将计算沙拉试验的总和为 4。

  5. 对于前 5 个试验类别,计算机检索与每个类别关联的图像,如果类别总和为 5 或更少,则将这些图像分配给 imagesNatural,如果类别总和大于 5,则将这些图像分配给 imagesHealthy。

  6. 对于接下来的 5 个试验类别,计算机检索与每个类别关联的图像,如果类别总和为 5 或更少,则将这些图像分配给 imagesHealthy,如果类别总和大于 5,则将这些图像分配给 imagesNatural。

  7. 现在 imagesNatural 中应该有 10 个图像,imagesHealthy 中应该有 10 个图像。每个图像类别应仅出现在 1 个数组中(例如,两个沙拉图像都应出现在 imagesNatural 中)。

  8. 对象开始一个名为“测试”的新时间线,他们只对 imagesNatural 中的图像进行评分。这是我的代码:

此代码不起作用。当我的计算机进入“测试”时间线时,它运行 5 次试验而不是所需的 10 次。此外,它在试验期间不显示任何图像。这让我觉得我的 imagesNatural 数组包含来自 imageNames_shuffled 数组的项目,而不是我的图像的路径。不幸的是,我不知道如何修复我的代码,以便使 imagesNatural 数组包含我的图像的路径。

如果有人对我如何修复我的代码有任何建议,请您在这里分享吗?

0 投票
1 回答
95 浏览

javascript - 如何解决 VSC 错误“ENOENT:没有这样的文件或目录”?

我正在尝试在 Visual Studio Code 中运行代码,但在调试控制台中出现此错误:无法读取 file:///C:/Users/####/OneDrive/Documents/Programming/ 的源映射Softwares/JavaScript/jspsych-6.3.1/examples/js/webgazer/webgazer.js:ENOENT:没有这样的文件或目录,打开 'c:\Users####\OneDrive\Documents\Programming\Softwares\JavaScript\jspsych -6.3.1\examples\js\webgazer\webgazer.js.map'

我不知道那个错误是什么意思。我知道 stackoverflow 社区的其他人已经问过这个问题,但我是一个新手程序员,我无法理解不适用于我自己的代码的讨论。根据我在之前的讨论中读到的内容,我认为我的代码可能会失败,因为我正在访问的文件夹没有 .map 文件。不幸的是,我不知道 .map 文件是什么,更不用说如何创建了!

有人能解释一下“ENOENT:没有这样的文件或目录”错误是什么意思,我该如何解决?如果解决问题需要创建一个 .map 文件,您能否解释一下如何做到这一点?

0 投票
0 回答
47 浏览

javascript - 如何循环一个函数两次以上?

我目前正在尝试运行以下用 jsPsych 编写的代码:

当我执行 console.log(imageNames_shuffled) 时,我的控制台返回了一个包含 10 个元素的数组,这是应该的。但是,当我执行 console.log(data) 时,我的控制台返回一个只有 2 个元素的数组。就好像 on_timeline_finish 函数只执行两次,即使我希望它执行 10 次。有没有人知道可能会发生什么?如果是这样,您能在这里分享您的见解吗?

0 投票
1 回答
83 浏览

javascript - 修改在 cognition.run 上运行的 jsPsych 滑块外观

我正在尝试更改在 cognition.run 上运行的 jsPsych 中默认滑块的外观。我已经上传了各种自定义 css 文件,但我似乎无法对(任何东西的)外观做出任何改变。

在 jsPsych 中,标记左侧有一个蓝色条(几乎像进度条或其他东西(请参见此处 jspsych 滑块的图片),但我对绝对位置更感兴趣(没有类似于此 qualtrics 样式滑块的蓝色条)。

关于如何修改它的任何建议?

我用于这个问题的代码如下。如果有在线解决方案,我将不胜感激。

0 投票
0 回答
38 浏览

javascript - 如何在jsPsych的canvas-slider-response插件中隐藏滑块的拇指直到参与者响应?

我有一个关于 jsPsych 的行为实验。目前,我向参与者展示了在 HTML 画布上绘制的图像,他们必须使用滑块做出响应。但是,我不希望他们在单击滑块之前看到拇指(以避免偏见)。我怎样才能做到这一点?

我尝试在 jsPsych 的 CSS 文件中更新这些,但这似乎没有帮助。此外,我为类似插件尝试了另一个现有的解决方案,但这对 canvas-slider-plugin 也没有帮助。

感谢您在这方面的任何帮助。谢谢你,普拉尚蒂

0 投票
0 回答
27 浏览

javascript - 在 jsPsych 中使用 canvas-slider-response 插件时如何使用“ENTER”键进行下一个试用?

在我的行为实验中,我向参与者展示了一个画布生成的图像,他们需要使用滑块做出响应。这是使用 jsPsych canvas-slider-response 插件完成的。一旦他们用滑块做出响应,他们必须单击“继续”按钮才能继续下一个试验。但是,如果他们无需使用鼠标单击就可以继续下一个试验,那将是更可取的。也就是说,他们按下“ENTER”键并继续下一个试验。任何关于如何做到这一点的想法都值得赞赏?谢谢你,普拉尚蒂