jsPsych/plugins/jspsych-call-function.js
Josh de Leeuw 25509c9f86 replaced all references to $this with display_element
$this was confusing on multiple levels, and has now been replaced with a
more appropriately named variable reference.
2013-01-18 14:26:08 -05:00

44 lines
1014 B
JavaScript

/** July 2012. Josh de Leeuw
This plugin gives the user the ability to execute an arbitrary function
during an experiment. It can be used to save data in the middle of an
experiment, for example.
Params:
"type" is "call_function"
"func" is the function that will be called
"args" is an array of arguments to pass to the function. (optional)
Data:
The return value of the function will be stored in the data.
**/
(function( $ ) {
jsPsych.call_function = (function(){
var plugin = {};
plugin.create = function(params) {
var trials = new Array(1);
trials[0] = {
"type": "call_function",
"func": params["func"],
"args": params["args"] || []
}
return trials;
}
plugin.trial = function(display_element, block, trial, part)
{
var return_val = trial.func.apply({}, [trial.args]);
if(return_val){
block.data[block.trial_idx] = return_val;
}
block.next();
}
return plugin;
})();
})(jQuery);