效果:

html:

<h1 id="h1">10s后关闭窗口</h1>
<a id="a1">启动</a>

js:

(function(){
var s=10;
var timer=null;
a1.onclick=function(){
//为了防止连续点击按钮,导致定时器,执行的太快,加个判断
if(timer==null){//当现在没有定时器在运行时,才能启动定时器。
timer=setInterval(function(){
s--;
//等倒计时到0时,停止
if(s>0){ //>=0
h1.innerHTML=`${s}s后自动关闭窗口`;
}else{
clearInterval(timer);
timer=null;
this.innerHTML="启动"
}
},1000)
this.innerHTML="停止"
}else{//如果有定时器运行时,点击按钮就是停止
clearInterval(timer);
timer=null;
this.innerHTML="启动"
}
}

})()

最新文章

  1. 关于arcgis engine的注记显示与关闭问题
  2. Ext.Net 学习随笔 002 默认按钮
  3. Lucene.net 高亮显示搜索词
  4. 封装Js库从获取控件的value值开始
  5. linux服务器修改ssh默认22端口方法
  6. Sublime Text博客插件 --- iblog
  7. linux ps查看进程命令
  8. (转载)Mac和iOS开发资源汇总—更新于2013-07-19
  9. ajax 文件上传,ajax
  10. Linux入门基础 #9:管道及重定向
  11. 第十七章——配置SQLServer(4)——优化SQLServer实例的配置
  12. Utility Classes Are Evil
  13. ***网Web前端开发规范(初稿)
  14. 用vue做app内嵌页遇到的坑
  15. ArrayList源码分析超详细
  16. hbase学习一 shell命令操作
  17. OO第一单元优化博客
  18. gulp的使用(一)之gulp的基础了解
  19. Git将本地项目上传到GitHub
  20. weixin.com域名易主 传交易价格仅次360.com

热门文章

  1. 【DSP开发】回马枪要你命 德州仪器发布最强ARM芯片Keystone II
  2. selenium—显示等待中期望的场景语句
  3. [转帖]Windows 下如何配置Oracle ASM???
  4. 从零开始,SpreadJS新人学习笔记【第4周】
  5. DOS sqlcmd
  6. 小记--------CDH版本启动cloudera manager UI界面
  7. 首个springboot项目总结
  8. Git复习(六)之标签管理
  9. 分布式的几件小事(四)dubbo负载均衡策略和集群容错策略
  10. springboot(十七)-使用Docker部署springboot项目