JS 定时器 setTimeout 与 setInterval 的区别和用法
1、setTimeout
延迟执行,只执行一次,定时炸弹、炸了就没了
window.setTimeout(function(){要执行的事件},间隔时间毫秒);
2、setInterval
无限循环,每一次循环有间隔时间,一般不要小于20毫秒
它是有返回值的,可以用一个变量来接收这个定时器对象
window.setInterval(function(){要执行的事件},间隔的时间毫秒);
3、clearInterval
关闭定时器
window.clearInterval(要关闭的定时器对象);
一旦执行这句代码,会立刻停止此定时器对象的执行
4、offset
当前即时的对象的高度、宽带、位置,直接到浏览器上去找
var v = document.getElementById('a')
v.offsetWidth // 当前的宽带
v.offsetHeight // 当前的高度
v.offsetLeft //当前距离左侧位置
v.offsetTop //当前距离上方位置
v.offsetParent //当前起点位置
实例
例1、点击按钮,按钮本身的长度发生变化,并且位置移动
<input type="button" value="按钮" id="a" />
<script type="text/javascript">
var v = document.getElementById('a')
v.onclick = function () {
v.style.width = v.offsetWidth + + "px"; //长度改变
v.style.left = v.offsetLeft + + "px"; // 位置移动,位置发生改变时必须要有定位 +100向右移动,-100向左移动
}
</script>
例2、点击按钮,按钮本身的长度、位置持续变化
<input type="button" value="按钮" id="a" /> <script type="text/javascript">
var v = document.getElementById('a')
v.onclick = function () {
window.setInterval(function () {
v.style.width = v.offsetWidth + + "px";
v.style.left = v.offsetLeft + + "px";
}, )
}
</script>
例3、 在例2的基础上让定时器停下
<input type="button" value="按钮" id="a" /> <script type="text/javascript">
var v = document.getElementById('a')
v.onclick = function () {
var t= window.setInterval(function () { //先用 var t 接收 window.setInterval 的值,这个值就是定时器对象
if (v.offsetLeft >)
{
window.clearInterval(t)
}
v.style.width = v.offsetWidth + + "px";
v.style.left = v.offsetLeft + + "px";
}, )
}
</script>
5、计时器
<button id="btn_Phone" click="SetInter()">获取验证码</button>
<script type="text/javascript">
function SetInter() {
time = ;
$("#btn_Phone").attr("disabled", true);
var myset = setInterval(
function countDown() {
if (time === ) {
$("#btn_Phone").attr("disabled", false);
$("#btn_Phone").html("重新获取验证码");
clearInterval(myset);
return;
}
else {
time--; $('#btn_Phone').html(time + "秒后重新获取");
}
}, );
}
</script>
JS 定时器 setTimeout 与 setInterval 的区别和用法的更多相关文章
- setTimeout()和setInterval()的区别
JS学习 - setTimeout()和setInterval()的区别 相同点 setTimeout 和 setInterval的语法相同.他们都有两个参数,一个是将要执行的代码字符串,还有一个是以 ...
- setTimeout和setInterval的区别以及如何写出效率高的倒计时
1.setTimeout和setInterval都属于js中的定时器,可以规定延迟时间再执行某个操作,不同的是setTimeout在规定时间后执行完某个操作就停止了,而setInterval则可以一直 ...
- 【转】JS中setTimeout和setInterval的最大延时值详解
前言 JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成.而这篇文中主要给大家介绍的是关于JS中setTi ...
- setTimeout与setInterval的区别
setTimeout与setInterval的区别:1.setTimeout设置后隔指定时间后只会执行一次2.setInterval设置后会每隔指定时间执行一次3.setTimeout一般在方法内部使 ...
- js,setTimeout与setInterval的用法
1.setTimeout与setInterval的区别 setTimeout: 1.直接使用的话,按照指定 的时间,只执行一次传入的函数参数. 2.函数的终止使用clearTimeout. setIn ...
- 定时器setTimeout()和setInterval()使用心得整理
JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成. 一.setTimeout() setTimeout函 ...
- javascript中的两个定时函数setTimeOut()和setInterVal()的区别
js中经常性要用到间隔几秒或暂停几秒执行某个函数, 简单介绍我从网上收集到setTimeOut()和setInterVal()的区别1.setInterVal()介绍 1)定义 setInterval ...
- Javascript 笔记与总结(2-13)定时器 setTimeout 和 setInterval
定时器可以让 js 效果每隔几秒钟执行一次或者 n 秒之后执行某一个效果.定时器不属于 javascript,是 window 对象提供的功能. setTimeout 用法: window.setTi ...
- setTimeout()与setInterval()方法区别介绍
计时器setTimeout()和setInterval()两个都是js的计时功能的函数两个有些区别,下面为大家简单介绍下,希望对大家有所帮助 计时器setTimeout()和setInterval ...
随机推荐
- Dacapao 实验集(9.12 版本) 能不能给个网址?【内存分析实验】
网址 Dacapao 实验集 引用 以前看到的文章,如果使用这个基准程序,引用文献很多时候是一篇论文: Blackburn S M, Garner R, Hoffmann C, et al. The ...
- WPF App.xaml.cs常用模板,包括:异常捕获,App只能启动一次
App.xaml.cs中的代码每次都差不多,故特地将其整理出来直接复用: using System; using System.Configuration; using System.Diagnost ...
- C#爬取京东手机数据+PowerBI数据可视化展示
此系列博文链接 C#爬虫基本知识 Html Agility Pack解析html TODO: EF6中基本认识. EF6操作mysql MySQL乱码问题 C#爬虫 在开头贴一下github仓库地址, ...
- UWP Button添加圆角阴影(二)
原文:UWP Button添加圆角阴影(二) 阴影 对于阴影呢,WindowsCommunityToolkit中已经有封装好的DropShadowPanel啦,只要引用Microsoft.Toolki ...
- 格式化json日期'/Date(-62135596800000)/'
日期经过json序列化之后,变成了'/Date(-62135596800000)/'字符串,在显示数据时,我们需要解释成正常的日期. Insus.NET和js库中,写了一个jQuery扩展方法: $. ...
- JavaScript基础(2)-DOM
一.伪数组arguments arguments代表的是实参,有个讲究的地方是:arguments只在函数中使用. 1.返回函数实参的个数:arguments.length,例如: fn(2,4); ...
- Java并发编程总结5——ThreadPoolExecutor
一.ThreadPoolExecutor介绍 在jdk1.8中,构造函数有4个.以 ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, ...
- Dubbo启动时服务检查
所谓启动时服务检查是指Dubbo在启动的时候会检查当前引用的服务是否可用,不可用会抛出异常,阻止程序的初始化,以便能在上线前快速的找到问题,默认的情况下check=true 通过设置check=fal ...
- Swift5 语言指南(二十八) 高级运算符
除了Basic Operators中描述的运算符之外,Swift还提供了几个执行更复杂值操作的高级运算符.这些包括C和Objective-C中您熟悉的所有按位和位移运算符. 与C中的算术运算符不同,S ...
- 基于alpine用dockerfile创建的tomcat镜像
1.下载alpine镜像 [root@docker43 ~]# docker pull alpine Using default tag: latest Trying to pull reposito ...