Javascript检查一段时间内是否没有发生某些事情
Javascript check if something doesn't happen over a period of time
var myVar = uncontrollableNumber;
$("#myButton").click(function(){
myVar++;
});
有没有办法检查"如果 myVar 在 20 秒内没有改变(可以上升或下降,代码只是一个示例),做某事,如果它确实改变了,则重新启动倒计时"?我尝试了一些代码,但失败了。
function myFunction(myVar){
var oldMyVar = myVar;
while(oldMyVar === myVar){
var countdownDone = false;
//countdown then run function
countdownDone = true;
}
if(!countdownDone){
myFunction();
}
这是一个适合您的工作JS小提琴。
还添加代码片段
var myVar = 0;
var oldVar = 0;
$("#myButton").click(function(){
myVar++;
});
setInterval(function(){
checkForChanges(); // after every 2 secs check
oldVar = myVar; // reset the old value now to the new one, so during next check we should have our myVar changed.
},2000);
function checkForChanges(){
if(oldVar === myVar){
$('#response').append('same value nothing has changed!!'+'<br/>');
//alert('same value nothing has changed!!');
}
else{
$('#response').append('The value changed!!'+'<br/>');
//alert('The value changed!!');
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="myButton">
click Me For Change!!
</button>
<div id="response">
</div>
为了在变量更改时触发事件,您应该使用
object.watch
有关详细信息,请参阅 - 侦听 JavaScript 或 jQuery 中的变量更改
相关文章:
- Canvas+svg路径动画,在路径中的特定点暂停一段时间,然后继续
- 收集一段时间内的EMG数据.建议JS
- 在一段时间内切换文本
- 如何停止字幕文本一段时间,然后继续
- HTTP服务器在一段时间后停止(Node.js)
- Hammer.js过了一段时间就停止工作了
- Meteor-在一段时间内解锁模板(按日期)
- 画布在一段时间后开始滞后
- JS-在一段时间后水平移动图像
- AJAX 调用在获得响应并成功执行时会冻结浏览器一段时间
- 表单提交在一段时间循环PHP,jquery
- 一段时间后生成回发
- 一段时间后自动点击提交按钮
- 如何每隔一段时间更改我网站的背景颜色
- 一段时间后调用函数,但只调用一次
- 一段时间后使用Javascript加载网页ASP.net
- Javascript检查一段时间内是否没有发生某些事情
- Chrome扩展程序每隔一段时间检查来自服务器的数据
- 在一段时间后随机检查一个单选按钮
- jQuery if语句,检查变量是否为真一段时间