JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)


Posted in Javascript onFebruary 26, 2016

废话不多说了,直接给大家贴代码了。

// 每隔五秒定时刷新当前窗口
setTimeout("self.location.reload();",5000);
//js 定时关闭窗口(ie和FF中测试过)
//6秒后自动关闭当前窗口
setTimeout("window.opener=null;window.close()",6000);

下面给大家介绍下javascript定时器使用

使用定时器实现JavaScript的延期执行或重复执行 window对象提供了两个方法来实现定时器的效果,分别是

window.setTimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。 它们的原型如下: window.setTimeout(expression,milliseconds); window.setInterval(expression,milliseconds); 其中expression可以是字符串,也可以是函数名。是字符串的时候可以带参数,函数名不能带参数,如果带上参数就直接执行函数了,不会延时。

function hello (){ 
console.log('I am dada'); //alert('I am ' + name);
//setTimeout(arguments.callee,2000); 
} setTimeout(hello,5000);//5秒后执行 setTimeout('hello()',3000);//3秒后执行
setTimeout(hello(),8000);//立刻执行

第一种情况是函数名,但是带不了参数

第二种情况是字符串,可执行的js代码,可以带参数,但是性能上比函数名差

第三种是调用函数,直接执行

所以如果想要穿参数,但是又不想通过字符串的形式调用,可以自己来写一个方法:

function _hello(_name){ 
return function(){ 
hello2(_name); 
} 
} 
setTimeout(_hello(name),7000);//立刻执行

一、setTimeout

setTimeout(function(){
//要执行的代码 
},200);

指隔200ms后,定时器代码被添加到队列中,等待JavaScript进程空闲后,代码才执行

二、setInterval

1、上面代码是指每隔200ms就创建一个执行代码的定时器
2、当使用setInterval时,仅当(在队列中)没有该定时器的任何其他代码实例时,才将定时器代码添加到队列中,引用JavaScript高级程序设计第二版书中语句(即:当前一个定时器代码执行时,紧跟后面的第一个定时器代码将添加到队列中,等待执行,再后面的定时器代码不会添加到队列中)

用setInterval来执行反复的行为的时候会遇到一个问题:

当定时器代码执行时间(假如需要600ms才执行完)超过指定间隔(这里是200ms),那么某些定时器代码就会被跳过(即后面的定时器代码不会被添加到队列中),前一个定时器代码执行完毕后,队列中的定时器代码立刻执行,各定时器之间的代码执行没有间隔。这时,需要使用链式setTimeout。

这样做的好处是:前一个定时器要执行的代码执行完且等待200ms后,才创建一个新的定时器,并把定时器代码添加到队列中执行即:不会出现定时器代码被跳过的情况;定时器之间的代码执行可以有间隔(根据自己设置)。

setTimeout(function(){
//要执行的代码 
setTimeout(arguments.callee,2000); 
},2000);
setInterval(function(){
//要执行的代码 
},200);

本文就给大家介绍这么多,希望对大家有所帮助,同时感谢大家对三水点靠木网站的支持。

Javascript 相关文章推荐
Jquery练习之表单验证实现代码
Dec 14 Javascript
js弹出框轻量级插件jquery.boxy使用介绍
Jan 15 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
Jun 24 Javascript
javascript省市级联功能实现方法实例详解
Oct 20 Javascript
关于function类中定义变量this的简单说明
May 28 Javascript
javascript实现去除HTML标签的方法
Dec 26 Javascript
浅谈js中的变量名和函数名重名
Feb 13 Javascript
原生js实现旋转木马轮播图效果
Feb 27 Javascript
JS查找数组中重复元素的方法详解
Jun 14 Javascript
详解webpack的配置文件entry与output
Aug 21 Javascript
react实现一个优雅的图片占位模块组件详解
Oct 30 Javascript
vue实现鼠标经过动画
Oct 16 Javascript
自动完成的搜索框javascript实现
Feb 26 #Javascript
jQuery实现控制文字内容溢出用省略号(…)表示的方法
Feb 26 #Javascript
js去字符串前后空格的实现方法
Feb 26 #Javascript
js判断鼠标位置是否在某个div中的方法
Feb 26 #Javascript
超实用的JavaScript表单代码段
Feb 26 #Javascript
理解javascript中Map代替循环
Feb 26 #Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
Feb 26 #Javascript
You might like
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
php中DOMElement操作xml文档实例演示
2013/03/26 PHP
php curl post 时出现的问题解决
2014/01/30 PHP
修改WordPress中文章编辑器的样式的方法详解
2015/12/15 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
jquery 批量上传图片实现代码
2010/01/28 Javascript
Extjs中常用表单介绍与应用
2010/06/07 Javascript
jquery keypress,keyup,onpropertychange键盘事件
2010/06/25 Javascript
jQuery EasyUI API 中文文档 - Panel面板
2011/09/30 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
解决checkbox的attr(checked)一直为undefined问题
2014/06/16 Javascript
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
js类式继承与原型式继承详解
2016/04/07 Javascript
js验证真实姓名与身份证号,手机号的简单实例
2016/07/18 Javascript
手机软键盘弹出时影响布局的解决方法
2016/12/15 Javascript
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
JavaScript 九种跨域方式实现原理
2019/02/11 Javascript
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
Python命令启动Web服务器实例详解
2017/02/23 Python
python爬虫之百度API调用方法
2017/06/11 Python
python spyder中读取txt为图片的方法
2018/04/27 Python
python deque模块简单使用代码实例
2020/03/12 Python
Python request使用方法及问题总结
2020/04/26 Python
如何利用python生成MD5并去重
2020/12/07 Python
测绘工程本科生求职信
2013/10/10 职场文书
物流管理毕业生自荐信
2013/10/24 职场文书
八一建军节活动方案
2014/02/10 职场文书
大学拉赞助协议书范文
2014/09/26 职场文书
质量主管工作职责
2014/09/26 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
Go语言实现Snowflake雪花算法
2021/06/08 Golang
Flask response响应的具体使用
2021/07/15 Python
SQL Server查询某个字段在哪些表中存在
2022/03/03 SQL Server
Python使用pyecharts控件绘制图表
2022/06/05 Python