定时器

qq_42543358 2019-01-18 10:41:31
js 点击按钮开启倒计时,怎么防止连续点击按钮,倒计时不受影响
...全文
403 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
<body>
	<button onclick="btn()">click</button>
	<span id="span1">10</span>
	<script>
		let span1 = document.getElementById("span1");
		let isClick = false;
		function btn () {
			let count = 10;
			if (isClick == false) {
				isClick = true;
				let time = setInterval(function (){
				count--
					span1.innerHTML = count
					if (count <= 0) {
						clearInterval(time)
						span1.innerHTML = "点击重新开始"
						isClick = false
					}

				}, 1000)
			}
			
		}


	</script>
</body>
  • 打赏
  • 举报
回复
var 一个变量,赋值为false,计时开始时为true,判断下这个变量就可以了。
leon werth 2019-01-30
  • 打赏
  • 举报
回复
这个问题的焦点在点击按钮防止连续点击,不在于倒计时, 所以我直接使用setTimeout来防止连续点击,而倒计时代码我就不参合了, 毕竟楼上这么多setInterval
leon werth 2019-01-30
  • 打赏
  • 举报
回复

let setTime = null
exe()
function exe(){
  if(setTime){clearTimeout(setTime)}
  setTime = setTimeout(function(){
    console.log("=======")
    //你的代码
  })
}
// 不建议弹出什么点击太频繁之类的提示框, 用户体验太差
tang871015 2019-01-30
  • 打赏
  • 举报
回复
第一次点击后,将点击按钮设置为不可用 disabled=true
xiao_lone 2019-01-29
  • 打赏
  • 举报
回复
把代码贴出来看看,也许是哪里写的不对
虎子8 2019-01-29
  • 打赏
  • 举报
回复
setInterval轻松搞定

if (this.Querytime == 0) {
this.Querytime = 10;
const timer = setInterval(() => {
if (!this.Querytime) {
clearInterval(timer);
} else {
this.Querytime = this.Querytime - 1;
}
}, 1000);
} else {
this.$info(`操作太快啦,请${this.Querytime}秒~~`);
return;
}
qq_42543358 2019-01-19
  • 打赏
  • 举报
回复
引用 4 楼 丰云的回复:
点此参考
大哥,我用你这个算法,为什么秒数到0时,分钟会跳两分钟
丰云 2019-01-18
  • 打赏
  • 举报
回复
qq_42543358 2019-01-18
  • 打赏
  • 举报
回复
引用 1 楼 丰云的回复:
设置一个公共变量,点击后判断这个变量,如果已经开始就不重复,如果没开始,就开始,并改变该变量的值
倒计时我是在买外面定时器定义了一个未来时间,定时器里面定义了当前时间。现在点击暂停按钮之后,等几秒再次点击开始按钮,倒计时的时间直接跳过了好几秒,刚开始刷新页面之后,等会再去点击开始,时间也会跳过去。求解
qq_42543358 2019-01-18
  • 打赏
  • 举报
回复
倒计时我是在买外面定时器定义了一个未来时间,定时器里面定义了当前时间。现在点击暂停按钮之后,等几秒再次点击开始按钮,倒计时的时间直接跳过了好几秒,求解
丰云 2019-01-18
  • 打赏
  • 举报
回复
设置一个公共变量,点击后判断这个变量,如果已经开始就不重复,如果没开始,就开始,并改变该变量的值

87,909

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧