JavaScript setTimeout()基本用法有哪些


Posted in Javascript onNovember 04, 2020

在制作网页动态效果时,可能会遇到需要延时在执行的需求,这时就可以用到 js 中定时器来实现此类需求,本文将对setTimeout()做一个用法总结。

  • setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式(以毫秒为单位)
  • setTimeout()只执行函数一次,如果需要多次调用可以使用setInterval(),或者在函数体内再次调用setTimeout()

setTimeout()用法

举个简单的例子

加入下列代码,在打开的页面静候三秒后,弹出警告框“你好”

<script>
  setTimeout("alert('你好')", 3000) 
</script>

效果:

再复杂一些的function定义

<script>
var myvar;

function myFunction() {
  myVar = setTimeout(alertFunc, 3000);
}

function alertFunc() {
 alert("Hello!");
}

自动每秒加 1 的 function

使用 setTimeout( ) 令文字框的数值每秒就加 1, 当然你也可以设定其他递增的速度, 例如每五秒就加 5, 或每五秒就加 1。

<script>
x = 0
function countSecond( )
{ x = x+1
  document.fm.displayBox.value=x
  setTimeout("countSecond()", 1000)
}
</script> 
<body bgcolor=lightcyan text=red> <p> </br>
<form name=fm>
<input type="text" name="displayBox"value="0" size=4 >
</form>
<script>
countSecond( )
</script>
</body>

用上述的方法设定时间, setTimeout( ) 虽然设定了是一秒, 但浏览器还有另外两项功能要执行, 所以一个循环的时间是稍多于一秒, 例如一分钟可能只有58 个循环。

延时关闭网页

按下按钮,Window open()打开一个网页,执行命令,三秒钟后自动关闭

<button onclick="openWin()">打开 "窗口"</button>
<script>
function openWin() {
  var myWindow = window.open("", "", "width=200, height=100");
  myWindow.document.write("这是一个新窗口");
  setTimeout(function(){ myWindow.close() }, 3000);
}
</script>

取消setTimeout()

当一个 setTimeout( ) 开始了循环的工作, 我们要使它停下来, 可使用 clearTimeout( )

<button onclick="myFunction()">点我弹出</button>
<button onclick="myStopFunction()">阻止弹出</button>
<script>
var myVar;
function myFunction() {
  myVar = setTimeout(function(){ alert("Hello") }, 2000);
}
function myStopFunction() {
  clearTimeout(myVar);
}
</script>

小结

setTimeout(),clearTimeout() , setInterval() 可以在写代码过程中灵活运用其特点达到需要完成的目的

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript数组的排序 sort()方法和reverse()方法
Jun 04 Javascript
JavaScript中判断整字类型最简洁的实现方法
Nov 08 Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
Mar 04 Javascript
javascript解决IE6下hover问题的方法
Jul 28 Javascript
js全选按钮的实现方法
Nov 17 Javascript
JavaScript中的编码和解码函数
Feb 15 Javascript
AngularJS表格添加序号的方法
Mar 03 Javascript
vue2+el-menu实现路由跳转及当前项的设置方法实例
Nov 07 Javascript
简单了解vue.js数组的常用操作
Jun 17 Javascript
JS数据类型(基本数据类型、引用数据类型)及堆和栈的区别分析
Mar 04 Javascript
React 高阶组件HOC用法归纳
Jun 13 Javascript
vant-ui组件调用Dialog弹窗异步关闭操作
Nov 04 #Javascript
通过实例了解Render Props回调地狱解决方案
Nov 04 #Javascript
vant中的toast层级改变操作
Nov 04 #Javascript
vant中的toast轻提示实现代码
Nov 04 #Javascript
JavaScript快速调试的两个技巧
Nov 04 #Javascript
如何实现小程序与小程序之间的跳转
Nov 04 #Javascript
Vant 中的Toast设置全局的延迟时间操作
Nov 04 #Javascript
You might like
php function用法如何递归及return和echo区别
2014/03/07 PHP
ThinkPHP实现ajax仿官网搜索功能实例
2014/12/02 PHP
php实现用于删除整个目录的递归函数
2015/03/16 PHP
php使用Imagick生成图片的方法
2015/07/31 PHP
在textarea中屏蔽js的某个function的javascript代码
2007/04/20 Javascript
jQuery EasyUI NumberBox(数字框)的用法
2010/07/08 Javascript
原生js验证简洁注册登录页面
2016/12/17 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
Angular5集成eventbus的示例代码
2018/07/19 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
2019/04/04 Javascript
vue+element UI实现树形表格
2020/12/29 Vue.js
[58:11]守擂赛第二周擂主赛 DeMonsTer vs Leopard
2020/04/28 DOTA
Python中dictionary items()系列函数的用法实例
2014/08/21 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
2017/01/24 Python
Python IDLE清空窗口的实例
2018/06/25 Python
python调用百度REST API实现语音识别
2018/08/30 Python
python读取图片任意范围区域
2019/01/23 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
利用Python进行图像的加法,图像混合(附代码)
2019/07/14 Python
python安装virtualenv虚拟环境步骤图文详解
2019/09/18 Python
使用python实现kNN分类算法
2019/10/16 Python
Python之变量类型和if判断方式
2020/05/05 Python
HTML5录音实践总结(Preact)
2020/05/07 HTML / CSS
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
JD Sports马来西亚:英国领先的运动鞋和运动服饰零售商
2018/03/13 全球购物
上海方立数码笔试题
2013/10/18 面试题
精通CAD能手自荐书
2014/01/31 职场文书
机电职业生涯规划书范文
2014/03/08 职场文书
演讲稿开场白台词
2014/08/25 职场文书
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
2015年教师自我评价范文
2015/03/04 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
公司周年庆寄语
2019/06/21 职场文书
Java循环队列与非循环队列的区别总结
2021/06/22 Java/Android