我正在尝试创建一个jsPsych插件,用户可以为每个刺激物选择颜色。为此,我使用jscolor。jscolor在普通的HTML中工作得很好,但是当我尝试将它合并到一个jsPsych插件中时,它没有加载jscolor库。
jsPsych.plugins["color-picker"] = (function() {
var plugin = {};
plugin.info = {
name: "color-picker",
parameters: {
}
}
plugin.trial = function(display_element, trial) {
display_element.innerHTML += '<input data-jscolor="">'; // <-- This should show a color picker if jscolor.js is loaded.
// data saving
var trial_data = {
parameter_name: 'parameter value'
};
// end trial
jsPsych.finishTrial(trial_data);
};
return plugin; })();我不明白为什么会发生这样的事情。也许我需要在插件中加载库?添加display_element.innerHTML += '<script src="library/jscolor.js"></script>';也不起作用。
我如何在我的插件中实现这一点?
发布于 2021-01-29 10:40:01
您可以在主实验脚本中加载jscolor库,然后引用插件中的函数。
你的插件现在可能无法工作的一个原因是,试用在开始后立即结束,因为调用jsPsych.finishTrial()时不需要等待用户的任何输入。
您可能希望将jsPsych.finishTrial()调用移到基于用户提交包含jscolor输入元素的表单而调用的函数中。
https://stackoverflow.com/questions/65936613
复制相似问题