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 相关文章推荐
popdiv
Jul 14 Javascript
JavaScript中清空数组的三种方法分享
Apr 07 Javascript
Javascript判断对象是否相等实现代码
Mar 18 Javascript
js特殊字符转义介绍
Nov 05 Javascript
简单的ajax连接库分享(不用jquery的ajax)
Jan 19 Javascript
浅谈javascript中的DOM方法
Jul 16 Javascript
Bootstrap页面缩小变形的快速解决办法
Feb 03 Javascript
vue.js 获取当前自定义属性值
Jun 01 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 Javascript
React实现全选功能
Aug 25 Javascript
Vue中component标签解决项目组件化操作
Sep 04 Javascript
Canvas跟随鼠标炫彩小球的实现
Apr 11 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函数解决SQL injection
2006/12/09 PHP
php下载excel无法打开的解决方法
2013/12/24 PHP
PHP实现中文圆形印章特效
2015/06/19 PHP
Laravel5.7 Eloquent ORM快速入门详解
2019/04/12 PHP
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
cookie.js 加载顺序问题怎么才有效
2013/07/31 Javascript
javascript实现简单的html5视频播放器
2015/05/06 Javascript
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
2016/05/13 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
JavaScript数据类型转换的注意事项
2016/07/31 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
一个简单的node.js界面实现方法
2018/06/01 Javascript
vue实现购物车抛物线小球动画效果的方法详解
2019/02/13 Javascript
详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
2019/04/04 Javascript
新手简单了解vue
2019/05/29 Javascript
微信小程序如何播放腾讯视频的实现
2019/09/20 Javascript
JavaScript缺少insertAfter解决方案
2020/07/03 Javascript
uniapp实现横向滚动选择日期
2020/10/21 Javascript
js简单粗暴的发布订阅示例代码
2021/01/23 Javascript
[43:24]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS Liquid
2018/03/30 DOTA
Python学习笔记之os模块使用总结
2014/11/03 Python
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
django 多数据库配置教程
2018/05/30 Python
Python实现图片添加文字
2019/11/26 Python
python中的列表和元组区别分析
2020/12/30 Python
scrapy-splash简单使用详解
2021/02/21 Python
python matplotlib工具栏源码探析三之添加、删除自定义工具项的案例详解
2021/02/25 Python
Amaze UI 文件选择域的示例代码
2020/08/26 HTML / CSS
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
班组长工作职责
2013/12/25 职场文书
五年级数学教学反思
2014/02/11 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
房屋认购协议书
2015/01/29 职场文书
先进个人总结范文
2015/02/15 职场文书
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server