对应智能社:09 定时器的使用

开启定时器:

 setInterval(xxx(),1000);//间隔型 第一个参数为函数,第二个为时间,单位为毫秒
setTimeout(xxx(),1000);//延时型

 停止定时器:

clearInterval(timer);//参数为setInterval()函数的返回值,返回值实际上是一个number
clearTimeout(timer);//参数为setTimeout()函数的返回值,返回值实际上是一个number

 

setInterval(a,1000);

其中参数一为一个函数名,第二个为一个数值,单位为毫秒。

function a(){
console.log('wyl');
} setInterval(a,1000)

  setInterval 的会一直执行,简直停不下来。

与之对应的是setTimeout则只执行一次。这就是二者的区别。

附上自己写的数码时钟:

<html>
<HEAD>
<meta charset="utf-8">
<title> 数码时钟</title>
<script type="text/javascript">
window.onload = function(){
xx();//一加载就立刻执行
setInterval(xx,1000); };
function xx(){
var date = new Date();
var hours = to_doub(date.getHours());
var min = to_doub(date.getMinutes());
var sec = to_doub(date.getSeconds());
var str = ''+hours+min+sec;
var img = document.getElementsByTagName('img');
var len = img.length; for(var i=0;i<len;i++){
img[i].src = "img/"+str[i]+".png";
}
} // 比如时间为 01 23 43 秒,01时要显示为01而不能显示为1,
function to_doub(n){
if(n<10){
return '0'+n;
}
else{
return ''+n;
}
}
</script>
</HEAD>
<body style="background:grey; ">
<img src="img/0.png">
<img src="img/2.png">
<img src="img/4.png">
<img src="img/5.png">
<img src="img/4.png">
<img src="img/1.png">
</body>
</html>

  x效果图如下:

另一个例子:

代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
div {float:left; margin:20px}
#div1 {width:50px; height:50px; background:red;}
#div2 {width:100px; height:100px; background:#0CF; display:none}
</style>
<script>
window.onload = function(){
var oDiv1 = document.getElementById('div1');
var oDiv2 = document.getElementById('div2');
var timer = null;
oDiv1.onmouseover = function(){
oDiv2.style.display = "block";//显示 }
oDiv1.onmouseout = function(){
timer = setTimeout(function(){
oDiv2.style.display = "none";//隐藏
},500);
}
oDiv2.onmouseover = function(){
clearTimeout(timer);
oDiv2.style.display = "block"; //显示
}
oDiv2.onmouseout = function(){
oDiv2.style.display = 'none';
}
}
</script>
</head> <body>
<div id="div1"></div>
<div id="div2"></div>
</body>
</html>

  效果图如下:

20150706 js之定时器的更多相关文章

  1. js延时定时器

    // 获取图片方向延时器 getImageOrientationTimer(context) { if (context.imageTimeout) return; if (context.image ...

  2. 【JavaScript基础】Js的定时器(你想看的原理也在哟)

    [JavaScript基础]Js的定时器(你想看的原理也在哟) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 说明 本章是经历 ...

  3. JS实现定时器

    导出:jquery.timers-1.2.js jQuery Timers提供了三个函式 1. everyTime(时间间隔, [定时器名称], 函式名称, [次数限制], [等待函式程序完成])2. ...

  4. js 关于定时器的知识点。

    Js的同步和异步 同步:代码从上到下执行. 异步:每个模块执行自己的,同时执行. js本身就是同步的,但是需要记住四个地方是异步. Js的异步   1.定时器  2.ajax   3事件的绑定  4. ...

  5. 关于js中定时器的返回值问题

    在js中,我们常常会用到定时器来处理各种各样的问题,当我们需要清除定时器的时候,我们常常会定义一个值来接受定时器的返回值,然后再把定义好的这个值写到清除定时器的括弧后面,如: var times = ...

  6. js 面向对象 定时器 046

    获取DOM对象补充 document.getElementsByTagName('div'); //获取的多个DOM对象 这种对象叫伪数组 如果想遍历此对象 通过for(var i=0; i < ...

  7. 【笔记】js 关于定时器的理解

    总所周知 js 里面的 setTimeout() 方法是用来设定某些功能在某段时间间隔之后执行的.但是今天看了高程对定时器的描述发现并不是这样. setTimeout(function(){ //.c ...

  8. js之定时器

    一.通过定时器我们可以间隔设定时间重复调用某个函数,利用这个特性,我们可以做很多事,例如,12306上的每间隔5秒查询自动查询一次余票,简单动画的实现等等 二.定时器的格式: 定时器有两种格式,分别是 ...

  9. js清除定时器注意点

    如何这篇文章所述:https://www.cnblogs.com/mmykdbc/p/7418575.html js多次调用创建定时器的函数,会使定时器速度越来越快,多次调用定时器的使用场景比如:监听 ...

随机推荐

  1. pprint模块解析

    pprint模块提供了打印任意python数据结构的方法,如果这个数据结构不是python的基本类型,则可能无法打印结果.         pprint模块定义了一个类:         pprint ...

  2. jbpmAPI-4

    Chapter 4. Examples 4.1.介绍基于web的工作台在默认情况下将安装两个样本库,包含各种示例项目,帮助你开始.本节显示了不同的例子可以发现在jbpm-playground库(也可用 ...

  3. c#的Marshal

    补充过程中~ 感觉应该是C#调用非托管的比较专门的class 例1. public struct ImageDataMsg { public char DataType; public int Srv ...

  4. 论left-pad的实现

    这两天微博上看到左耳朵耗子吐槽了一下node社区的left-pad的代码,原po链接 我也思考了一下 怎么用实现一个left-pad比较合适,上图代码确实比较搓 leftpad功能,就是字符串前面拼指 ...

  5. mybatis日记配置Log4j

    拷贝log4j-1.2.16.jar到项目lib下 方式一是在src下新建一个log4j.xml文件,其具体内容如下 <?xml version="1.0" encoding ...

  6. EGL接口 简单介绍

    from http://lyodev.appspot.com 第二章 EGL 接口 EGL 是 OpenGL ES 和底层 Native 平台视窗系统之间的接口.本章主要讲述 OpenGL ES 的 ...

  7. MYSQL大小写(由于数据由windows迁移到Linux导致)

    今日从sqlserver上迁移了一个数据库到Linux的MySQL中,迁移成功了,但是应用却跑不通,查看日志发现,提示找不到表,我注意到,表名都是存在大小写的,而MySQL中的表名都是小写的.这提醒了 ...

  8. jQuery的AJAX方法简介及与其他文件$符号冲突的解决办法

    一.重要的jQuery AJAX方法简介 $.load(url) 从服务器载入数据 $.get(url,callback) 从服务器请求数据,并执行回调函数 $.post(url,data,callb ...

  9. React Native for android 项目驱动教程

    第一节 搭建开发环境 第二节 显示页面标题 第三节 实现页面布局 # React native是什么? React Native,是颠覆性的移动开发技术.它使用js开发,又是原生应用,不同于Hybri ...

  10. 【ActiveMQ】设置自动重连

    <property name="brokerURL" value="tcp://localhost:61616"/> <property na ...