js定时器关闭,js定时器停止,一次关闭所有正在运行的定时器,自定义函数clearIntervals()一次关闭所有正在运行的定时器
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>clearIntervals()一次关闭所有定时器</title>
</head>
<body>
<div>下面有三个定时器 以不一样的时间间隔输出不同内容</div><br><br>
<input type='button' value='输出“liu” 初始一秒4次' >
<input type="button" value="输出“jin” 初始一秒2次">
<input type="button" value="输出“yu” 初始一秒1次">
<button id='clear' style='margin-left:50px;'>清除所有定时器</button>
<div id="div1"></div>
<script type="text/javascript">
var oDiv = document.getElementById('div1');
var aInput = document.getElementsByTagName('input');
var oBtn = document.getElementById('clear');
var arr = [];
var txt = '';
//每次生成的定时器都单独有一个数组里的位置,避免了冲突
aInput[0].onclick=function(){
arr.push(setInterval(liu, 250));
}
aInput[1].onclick=function(){
arr.push(setInterval(jin, 500));
}
aInput[2].onclick=function(){
arr.push(setInterval(yu, 1000));
}
//调用自定义函数 用一个for循环 关闭数组中存储的所有定时器;
oBtn.onclick=function(){
clearIntervals(arr);
}
function liu(){
txt = txt.concat(' Liu')
oDiv.innerHTML=txt;
return txt;
}
function jin(){
txt = txt.concat(' Jin')
oDiv.innerHTML=txt;
return txt;
}
function yu(){
txt = txt.concat(' Yu')
oDiv.innerHTML=txt;
return txt;
}
//原理 用一个数组来保存所有定时器的id
function clearIntervals(array){
for (var i = array.length - 1; i >= 0; i--) {
// if (typeof array[i] !== 'undefined') {
clearInterval(array[i]);
// };
};
}
</script>
</body>
</html>
js定时器关闭,js定时器停止,一次关闭所有正在运行的定时器,自定义函数clearIntervals()一次关闭所有正在运行的定时器的更多相关文章
- js课程 3-9 js内置对象定时器和超时器怎么使用
js课程 3-9 js内置对象定时器和超时器怎么使用 一.总结 一句话总结:定时器: 1.定义 sobj=setInterval(func,1000); 2.清除 cl ...
- JS进阶 ] 分析JS中的异步操作
写在前面 JS因为是单线程的,所以在执行事务的时候,往往会因为某个事务的延迟,而导致服务器假死,这时候异步编程就显的格外重要,但是异步编程一般理解为回调函数callback,典型的就是node,回调函 ...
- 从浏览器多进程到JS单线程,JS运行机制的一次系统梳理
前言 见解有限,如有描述不当之处,请帮忙及时指出,如有错误,会及时修正. ----------超长文+多图预警,需要花费不少时间.---------- 如果看完本文后,还对进程线程傻傻分不清,不清楚浏 ...
- 从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理
前言 来源:https://dailc.github.io/2018/01/21/js_singlethread_eventloop.html 见解有限,如有描述不当之处,请帮忙及时指出,如有错误,会 ...
- swiper.js + jquery.magnific-popup.js 实现奇葩的轮播需要
奇葩的轮播图 说轮播图很简单的,一定是没有遇到厉害的产品. 先说需求: 首先,一个mask会有三张图片,点击左右按钮会左右滑动一张图片的宽度. 点击展示的三张图片的任意一张,弹出遮罩,显示该图片的放大 ...
- JS系列:js节点
节点(node) 在html文档中出现的所有东西都是节点 元素节点(HTML标签) 文本节点(文字内容) 注释节点(注释内容) 文档节点(document) … 每一种类型的节点都会有一些属性区分自己 ...
- 前端(十三)—— JavaScript高级:回调函数、闭包、循环绑定、面向对象、定时器
回调函数.闭包.循环绑定.面向对象.定时器 一.函数高级 1.函数回调 // 回调函数 function callback(data) {} // 逻辑函数 function func(callbac ...
- JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(四):自定义T4模板快速生成页面
前言:上篇介绍了下ko增删改查的封装,确实节省了大量的js代码.博主是一个喜欢偷懒的人,总觉得这些基础的增删改查效果能不能通过一个什么工具直接生成页面效果,啥代码都不用写了,那该多爽.于是研究了下T4 ...
- Matlab基本功能:自定义函数、添加块注释、定时器的试用
1.自定义函数 新建一个m文件 在m文件里面第一行输入function [X,Y]=pll(X1,Y1,X2,Y2),这里x1 x2 y1 y2是你函数的输入值, x y是输出值,接着定义你要实现的功 ...
随机推荐
- python抓取每期双色球中奖号码,用于分析
获取每期双色球中奖号码,便于观察,话不多说,代码如下 # -*- coding:utf-8 -*- # __author__ :kusy # __content__:获取每期双色球中奖号码 # __d ...
- JMeter一台机器可以支持多大的并发量
Support for concurrent thread is basically depends on many factors like OS, free RAM and connections ...
- Delphi重庆医保支付【支持重庆东软,万达,银海医保通用】
作者QQ:(648437169) 点击下载➨Delphi重庆医保支付 东软接口文件 银海接口文件 万达接口文件 重庆市医保接口文档 [Delp ...
- Akka-CQRS(11)- akka-http for http-web-service: Marshalling-数据序列化
前面几篇讨论了关于gRPC方式的前后端连接集成方式.gRPC也是一个开放的标准,但讲到普及性就远远不及基于http/1.1协议的web-service了.特别是gRPC的前端编程还是有一定的门槛,所以 ...
- 比较器Comparable和Comparator
在java中要实现自定义类的比较,提供了以下两个接口: Comparable(内部排序) int compareTo(Object obj);返回值为int,默认升序排序 Comparator(外部排 ...
- Java基础篇(下)
6.Java面向对象的三个特征与含义 三大特征是:继承.封装和多态. (1)继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类. 继承就是子类继承父类的特征和行为,使得 ...
- xcode模拟器使用常用的命令。
1.查看模拟器的udid用的 xcrun instruments -s xcrun simctl list 2.启动这个模拟器: xcrun instruments -w 'B39EC2FF-8A8B ...
- Spring Boot 企业级应用开发实战 刘伟东-2018年3月第一版
Spring会自动搜索某些路径下的Java类 并将这些类注册微Bean实例,这样就省去了所有Bean都配置在XML的麻烦 Spring会适当地将显示指定路径下的的类全部注册微Spring Bean . ...
- 11、多行文本最后一行显示省略号并截取文本字数(vue)
1.首先通过css实现多行文本显示省略号: { height: 45px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-li ...
- Float型 与 Double型数据的存储方式
先来了解一下浮点数在计算机中是以什么形式存储的 首先要知道计算机能懂得只有0和1,每一个0和1都占一个位 bit (比特)(Binary Digits):存放一位二进制数,最小的存储单位. 而对于存放 ...