Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.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_Scope - Fatal编程技术网

Javascript作用域,使用间隔的开始-停止按钮

Javascript作用域,使用间隔的开始-停止按钮,javascript,scope,Javascript,Scope,我对范围有问题 我有一个停止按钮不工作。“开始”按钮工作得很好,但我似乎无法让“停止”按钮工作,我知道它与范围有关。我将感谢任何帮助 let css=document.querySelector('h3'); 设color1=document.querySelector(“.color1”); 让color2=document.querySelector(“.color2”); 设color3=document.querySelector(“.color3”); 让度=document.que

我对范围有问题

我有一个停止按钮不工作。“开始”按钮工作得很好,但我似乎无法让“停止”按钮工作,我知道它与范围有关。我将感谢任何帮助

let css=document.querySelector('h3');
设color1=document.querySelector(“.color1”);
让color2=document.querySelector(“.color2”);
设color3=document.querySelector(“.color3”);
让度=document.querySelector(“.degree”);
让body=document.getElementById(“梯度”);
设deg=document.getElementById(“deg”);
让random=document.getElementById(“random”);
让start=document.getElementById(“start”);
let stop=document.getElementById(“stop”);
函数setGradient(){
body.style.background=
“线性梯度(”+
度值+
“度,”+
颜色1.0+
", " +
颜色2.0+
", " +
颜色3.3价值+
")";
css.textContent=body.style.background+“;”;
deg.textContent=度值;
}
函数增量(){
度值=0;
setInterval(函数(){
度值=度值%360+1;
setGradient();
如果(度值==359){
增量();
}
}, 100);
}
start.addEventListener(“单击”,增量);
stop.addEventListener(“单击”,函数(){
清除间隔(计数器);
});
color1.addEventListener(“输入”,设置梯度);
color2.addEventListener(“输入”,设置梯度);
color3.addEventListener(“输入”,设置梯度);
度。加法器列表器(“输入”,设置梯度);

window.onload=设置梯度必须分配
计数器
变量


counter=setInterval(..)

有什么问题?你有错误吗?您可以添加html吗?同时提供html部分。请添加代码片段以更好地理解您的任务和问题。当我将计数器设置为全局变量=时,计时器将自动启动,而无需单击“开始”。我想我可以这样做,并将counterInterval()添加到window.onload?中,并且在一个对
increment
和stop回调都可访问的范围内:
let counter=null
@dreamingofcrypt您没有将
counter
设置为全局变量。您正在将其设置为
setInterval()
@DreamingOfCrypto返回的id。您应该将其分配到第31行的当前位置,而不是单独分配到外部。非常感谢您的建议。我会继续努力,让你知道我发现了什么。最近刚开始学习,用javascript还是有点耳濡目染。