diff --git a/jspsych.js b/jspsych.js index 0f1b7e1a..88a5255b 100755 --- a/jspsych.js +++ b/jspsych.js @@ -2528,11 +2528,15 @@ jsPsych.pluginAPI = (function() { window.webkitRequestAnimationFrame || window.msRequestAnimationFrame; var cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame; - + var raf_count; module.setTimeout = function(callback, delay){ // record the start time var start_time = performance.now(); + raf_count = 0; + console.log('setTimeout start time: ', start_time); var handle = requestAnimationFrame(function(timestamp) { + raf_count++; + console.log('count: ', raf_count, ' time: ', performance.now() - start_time); // setup the next rAF call to check for timeouts and update handle value handle = requestAnimationFrame(function(timestamp) { checkForTimeouts(timestamp, start_time, callback, delay, handle); @@ -2550,7 +2554,9 @@ jsPsych.pluginAPI = (function() { } function checkForTimeouts(timestamp, start_time, callback, delay, handle) { + raf_count++; var curr_duration = performance.now() - start_time; + console.log('count: ', raf_count, ' time: ', curr_duration); // check if the current duration is at least as long as the intended duration // minus half the typical frame duration (~16 ms). this helps avoid displaying the stimulus // for one too many frames. diff --git a/plugins/jspsych-html-keyboard-response.js b/plugins/jspsych-html-keyboard-response.js index 6b6130ba..3d143b3f 100644 --- a/plugins/jspsych-html-keyboard-response.js +++ b/plugins/jspsych-html-keyboard-response.js @@ -69,6 +69,7 @@ jsPsych.plugins["html-keyboard-response"] = (function() { // draw display_element.innerHTML = new_html; + console.log('display time: ', performance.now()); // store response var response = { @@ -97,6 +98,7 @@ jsPsych.plugins["html-keyboard-response"] = (function() { // clear the display display_element.innerHTML = ''; + console.log('clear display time: ', performance.now()) // move on to the next trial jsPsych.finishTrial(trial_data);