Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何让听者即使在我上下移动电话屏幕时也能正常工作?_Javascript_Mobile_Bootstrap 4 - Fatal编程技术网

Javascript 如何让听者即使在我上下移动电话屏幕时也能正常工作?

Javascript 如何让听者即使在我上下移动电话屏幕时也能正常工作?,javascript,mobile,bootstrap-4,Javascript,Mobile,Bootstrap 4,我正在开发一个小图书馆来进行心理实验。您可以在现场试用,并试用以下代码段中的代码 var selfConcept=(函数(){ //私人 var activeListenerStepNames=[]; var accuracyFeedbackDuration=400; var间隔=1500; var clickListenerHandler=函数(e){ 按钮接触=“”; 开关(如target.id){ 案例“d按钮”: 按钮接触='D'; 打破 案例“k按钮”: 按钮接触='K'; 打破 }

我正在开发一个小图书馆来进行心理实验。您可以在现场试用,并试用以下代码段中的代码

var selfConcept=(函数(){
//私人
var activeListenerStepNames=[];
var accuracyFeedbackDuration=400;
var间隔=1500;
var clickListenerHandler=函数(e){
按钮接触=“”;
开关(如target.id){
案例“d按钮”:
按钮接触='D';
打破
案例“k按钮”:
按钮接触='K';
打破
}
e、 数据=按钮触动;
window.performance.mark(markName);
window.performance.measure(measureId,generateMarkName('start'),markName);
推({
“步骤ID”:当前步骤,
“刺激”:步骤[currentStep][“刺激”],
“responseTime”:window.performance.getEntriesByName(measureId)[0][“duration”],
“键”:e.data
});
//Android修复程序
document.getElementById(“隐藏输入”)。值=“”;
drawSetting();
下一步();
};
var currentStep=0;
var fixationCrossDuration=1000;
var-frameId;
var keyListenerHandler=函数(e){
if(String.fromCharCode(e.keyCode)='D'| | String.fromCharCode(e.keyCode)='K'){
window.performance.mark(markName);
window.performance.measure(measureId,generateMarkName('start'),markName);
推({
“步骤ID”:当前步骤,
“刺激”:步骤[currentStep][“刺激”],
“responseTime”:window.performance.getEntriesByName(measureId)[0][“duration”],
“key”:String.fromCharCode(e.keyCode),
});
isAccuracyFeedbackDisplayed=假;
removeListener(窗口“输入”、标记名、keyListenerHandler);
下一步();
}
};
var spaceListenerHandler=函数(e){
if(String.fromCharCode(e.keyCode)=''){
e、 预防默认值();
removeListener(文档“keydown”、markName、spaceListenerHandler);
drawSetting();
下一步();
}
}
var isAccuracyFeedbackDisplayed=假;
var-measureId;
var响应时间=[];
var步骤=[];
var组指令;
函数addListener(元素、事件、名称、事件函数){
元素。addEventListener(事件、事件函数);
activeListenerStepNames.push(名称);
//log(activeListenerStepNames);
}
功能绘图设置(文本、颜色、背景){
文本=(文本===未定义)?“”:文本;
颜色=(颜色===未定义)?“黑色”:颜色;
背景=(背景===未定义)?“白色”:背景;
workAreaDiv=document.getElementById(“工作区”);
workAreaDiv.innerHTML=“”;
div=document.createElement('div');
div.id=‘刺激’;
div.style.color=颜色;
div.innerHTML=文本;
div.style.fontSize='280%';
div.style.class='col';
工作区分区(分区);
}
函数fixForMobilePhones(){
$(“#工作区容器”).removeClass('h-100').addClass('h-75');
$(“#容器”).append('NOYES');
addListener(document.getElementById(“d按钮”),“单击”,标记名称,单击ListenerHandler);
addListener(document.getElementById(“k按钮”),'click',markName,clickListenerHandler);
}
函数generateMarkName(名称){
返回name+'-'+steps[currentStep][“type”]+'-'+currentStep;
}
函数isMobile(){
if(navigator.userAgent.match(/Android/i)||
navigator.userAgent.match(/webOS/i)||
navigator.userAgent.match(/iPhone/i)||
navigator.userAgent.match(/iPad/i)||
navigator.userAgent.match(/iPod/i)||
navigator.userAgent.match(/BlackBerry/i)||
navigator.userAgent.match(/Windows Phone/i)
) {
返回true;
}
返回false;
}
函数nextStep(){
var nextStep=currentStep+1;
如果(下一步步骤){
currentStep=nextStep;
markName=generateMarkName('start');
window.performance.mark(markName);
//console.log(“mark-markName:+markName”);
}否则{
window.cancelAnimationFrame(frameId);
frameId=未定义;
警报(“结束”);
}
}
函数randomizeSteps(){
字=[“字1”、“字2”、“字3”、“字4”、“字5”、“字6”、“字7”、“字8”、“字9”、“字10”];
试验=[];
指数=0;
for(索引=0;索引0;i--){
常数j=数学楼层(数学随机()*(i+1));
[array[i],array[j]=[array[j],array[i]];
}
返回数组;
}
函数startTimer(){
frameId=requestAnimationFrame(startTimer);
window.performance.mark('frame');
measureId='measure-'+currentStep;
//log(“类型:”+步骤[currentStep][“类型
document.addEventListener('touchstart', touchstart);
document.addEventListener('touchmove', touchmove);
test.html:51
[Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive.