如何使 clearInterval 函数工作
How to make clearInterval function work
我是一个极端的新手,所以对一个公认的愚蠢问题表示歉意。但是我已经研究并尝试了几种方法来使此功能工作,但似乎无法获得它。我正在上在线课程,我正在尝试构建一个简单的应用程序,其中图像在屏幕上移动,用户尝试单击它 - 当他们单击图像时,图像消失。我能够构造 setInterval 函数,但无法让 clearInterval 函数工作。
(为代码的政治性质道歉!只是一点美国的政治幽默。无意冒犯!
<h2>See if you can click on Hillary before she changes her position!</h2>
<p class="bold">This is your time:<span id="time">0</span>s</p>
<div id="box">
<img src="images/hillary.jpg" style="width:100%; height:100%">
</div>
<script type="text/javascript">
var time; var top; var left;
var makeBox;
function makeBox() {
time=Math.random();
time=1000*time;
setInterval(function () {
top=Math.random();
top=top*300;
left=Math.random();
left=left*1000;
document.getElementById("box").style.top=top+"px";
document.getElementById("box").style.left=left+"px";
document.getElementById("box").style.display="block";
createdTime=Date.now();
},time);
}
makeBox();
function myStopFunction() {
clearInterval(makeBox);
}
document.getElementById("box").onclick= function(){
clearInterval(makeBox);
this.style.display="none";
};
</script>
贾斯汀
为了清除计时器,您需要首先存储它。使用 setInterval
创建间隔时,应将其返回值存储在变量中。然后,当您调用 clearinterval
时,将变量传入。
以下代码片段包含您需要的内容:
var myTimer;
function makeBox() {
time=Math.random();
time=1000*time;
myTimer = setInterval(function () {
top=Math.random();
top=top*300;
left=Math.random();
left=left*1000;
document.getElementById("box").style.top=top+"px";
document.getElementById("box").style.left=left+"px";
document.getElementById("box").style.display="block";
createdTime=Date.now();
},time);
}
makeBox();
function myStopFunction() {
clearInterval(myTimer);
}
相关文章:
- 咖啡的Javascript订单总数无法使函数正常工作.请协助
- removeClass函数没有'工作不正常
- 你能解释一下这个阶乘函数是如何工作的吗?
- JavaScript链接在点击时不起作用;函数在页面加载时工作
- jQuery加载的async和ready函数不工作
- 更改智能表中的页面将停止JQuery函数的工作
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- jQuery函数不能只在一个页面上工作
- 如何检查这个代码点火器php函数是否工作,该函数是否在ajax url中使用
- 从js引擎的角度来看闭包和构造函数是如何工作的
- appendChild在函数外部工作,但在函数内部不工作
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- 由于某种原因,我的JavaScript函数无法工作
- 为什么递归生成器函数没有't在ES2015工作
- 我需要一个jQuery函数来只工作在700px以上的屏幕大小,无法在我的代码中发现错误
- 从控制台中的工作函数转换为工作脚本.(请参阅编辑)
- Angular JS-工作函数中的“错误:[$interpole:interr]Can't interpole:
- 简化工作函数以替换特定单词
- 为什么不在回调中工作函数?
- InnerHTML不工作:函数未定义