首页 > 编程知识 正文

计时器的js代码(计时器的js代码是多少)

时间:2023-12-06 16:47:15 阅读:312735 作者:NTPK

本文目录一览:

  • 1、js计时器中setTimeout和setInterval的区别和使用
  • 2、提问一段关于倒计时的javascript代码,请大神指点
  • 3、怎样用javascript做一个计时器
  • 4、用javascript写一个计时器程序,有启动暂停和复位
  • 5、javascript倒计时时间代码怎么写 比如在页面上显示3,2,1
  • 6、谁能给我一个倒计时的代码啊?

js计时器中setTimeout和setInterval的区别和使用

JavaScript 计时器

计时器类型:

一次性计时器(setTimeout):仅在指定的延迟时间之后触发一次。

间隔性触发计时器(setInterval):每隔一定的时间间隔就触发一次。

计时器方法:

一.计时器setInterval()       

                   

在执行时,从载入页面后每隔指定的时间执行代码。

语法:

setInterval(代码,交互时间);

参数说明:

1. 代码:要调用的函数或要执行的代码串。

2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

返回值:

一个可以传递给 clearInterval() 从而取消对"代码"的周期性执行的值。

调用函数格式(假设有一个clock()函数):

setInterval("clock()",1000)

setInterval(clock,1000)

我们设置一个计时器,每隔100毫秒调用clock()函数,并将时间显示出来,代码如下:

!DOCTYPE HTML

html

head

meta http-equiv="Content-Type" content="text/html; charset=utf-8"

title计时器/title

script type="text/javascript"

  var int=setInterval(clock, 100)

  function clock(){

    var time=new Date();

    document.getElementById("clock").value = time;

  }

/script

/head

body

  form

    input type="text" id="clock" size="50"  /

  /form

/body

/html

二.计时器setTimeout()       

                 

setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次。

语法:

setTimeout(代码,延迟时间);

参数说明:

1. 要调用的函数或要执行的代码串。

2. 延时时间:在执行代码前需等待的时间,以毫秒为单位(1s=1000ms)。

当我们打开网页3秒后,在弹出一个提示框,代码如下:

!DOCTYPE HTML

html

head

script type="text/javascript"

  setTimeout("alert('Hello!')", 3000 );

/script

/head

body

/body

/html

当按钮start被点击时,setTimeout()调用函数,在5秒后弹出一个提示框。

!DOCTYPE HTML

html

head

script type="text/javascript"

function tinfo(){

  var t=setTimeout("alert('Hello!')",5000);

 }

/script

/head

body

form

  input type="button" value="start" onClick="tinfo()"

/form

/body

/html

要创建一个运行于无穷循环中的计数器,我们需要编写一个函数来调用其自身。在下面的代码,当按钮被点击后,输入域便从0开始计数。

!DOCTYPE HTML

html

head

script type="text/javascript"

var num=0;

function numCount(){

 document.getElementById('txt').value=num;

 num=num+1;

 setTimeout("numCount()",1000);

 }

/script

/head

body

form

input type="text" id="txt" /

input type="button" value="Start" onClick="numCount()" /

/form

/body

/html

提问一段关于倒计时的javascript代码,请大神指点

你这个代码看着我都有点晕,你看我这个吧

!DOCTYPE html

html

head lang="ch"

    meta charset="UTF-8"

    titlecountdown/title

/head

body

span id="countdown"/span

script

   var days, hours, minutes, seconds;

   var target_date = new Date("Jan 1, 2050").getTime();

   var countdown = document.getElementById("countdown");

   setInterval(function () {

      var current_date = new Date().getTime();

      var seconds_left = (target_date - current_date) / 1000;

      days = parseInt(seconds_left / 86400);

      seconds_left = seconds_left % 86400;

      hours = parseInt(seconds_left / 3600);

      seconds_left = seconds_left % 3600;

      minutes = parseInt(seconds_left / 60);

      seconds = parseInt(seconds_left % 60);

      

      countdown.innerHTML = days + "天, " + hours + "小时, "

      + minutes + "分钟, " + seconds + "秒";

   }, 1000);

/script

/body

/html

怎样用javascript做一个计时器

计时器, 在生活当中也是用得频繁的功能, 比如锻炼身体, 跑步比赛等等相关的活动. 我们用Javascript来完成一个计时器.

计时器, 主要就是对时间的一个逻辑处理, 比如60秒等于1分钟, 60分钟等于一个小时, 我们这里只做到小时的处理. 就这么一个简单的逻辑, 然后动态的显示在一个Input里面.

那现在我们来完成这个界面

label计时:/label

input type="text" name="" id="timer"/

button onclick="pause(this)" id="pause" state="on"暂停/button

button onclick="restart()"重新开始/button

给标签元素一个ID是为了获取其中的标签, 然后加入了两个点击事件, 计数器的暂停, 和重新开始事件.

首先我们来完成开始计时的处理, 开始计时主要还是是用了setInterval的方法, 其中每隔1秒执行一次方法,

这样我们就可以对时间做处理, 就像开头所说60秒等于1分钟..., 所以这里就需要用判断来处理, 最后就将其中的得到的秒,分,时显示到输入框里.

var ele_timer = document.getElementById("timer");

var n_sec = 0; //秒

var n_min = 0; //分

var n_hour = 0; //时

//60秒 === 1分

//60分 === 1小时

function timer() {

return setInterval(function () {

var str_sec = n_sec;

var str_min = n_min;

var str_hour = n_hour;

if ( n_sec 10) {

str_sec = "0" + n_sec;

}

if ( n_min 10 ) {

str_min = "0" + n_min;

}

if ( n_hour 10 ) {

str_hour = "0" + n_hour;

}

var time = str_hour + ":" + str_min + ":" + str_sec;

ele_timer.value = time;

n_sec++;

if (n_sec 59){

n_sec = 0;

n_min++;

}

if (n_min 59) {

n_sec = 0;

n_hour++;

}

}, 1000);

}

var n_timer = timer();

我们用timer方法包装setInterval方法是为了,后面暂停和重新开始做处理.

用户点击了暂停, 计时器就停止计时, 用户继续点击这个按钮, 计时器继续计时. 所以这里有一个状态需要控制,这个状态我们给这个按钮一个属性.

//暂停和继续

function pause(self) {

var state = self.getAttribute("state");

if (state === "on") {

clearInterval(n_timer);

self.textContent = "继续";

self.setAttribute("state", "off");

} else {

n_timer = timer();

self.textContent = "暂停";

self.setAttribute("state", "on");

}

}

最后我们来看一下重新开始, 重新开始事件就更加简单了. 将计数器清0, 然后改变暂停按钮初始状态.

function restart() {

clearInterval(n_timer);

n_sec = 0;

n_min = 0;

n_hour = 0;

n_timer = timer();

var ele_pause = document.getElementById("pause");

ele_pause.textContent = "暂停";

ele_pause.setAttribute("state", "on");

}

这样就完成了计时的功能.效果如下

用javascript写一个计时器程序,有启动暂停和复位

#html:

input type="button" value="启动" id="btnStart" /

input type="button" value="复位" id="btnReset" /

label id="lblTime"0:0:0:0/label

#javascript:

window.onload = function () {

    var start = document.getElementById("btnStart");

    var reset = document.getElementById("btnReset");

    var time = document.getElementById("lblTime");

    

    var h = 0, m = 0, s = 0, ms = 0, t;

    //开始计时

    start.onclick = function () {

        bvalue = start.value;

        if (bvalue == "启动") {

            t = window.setInterval(function () {

                if (ms ==  100) {

                    s += 1;

                    ms = 0;

                }

                if (s ==  60) {

                    m += 1;

                    s = 0;

                }

                if (m ==  60) {

                    h += 1;

                    m = 0;

                }

                time.textContent = h + ":" + m + ":" + s + ":" + ms;

                ms++;

            }, 10);

            start.value = "暂停";

        }

        else {

            window.clearInterval(t);

            start.value = "启动";

        }

    }

    //复位

    reset.onclick = function () {

        window.clearInterval(t);

        time.textContent = 0 + ":" + 0 + ":" + 0 + ":" + 0;

    }

}

javascript倒计时时间代码怎么写 比如在页面上显示3,2,1

meta http-equiv="Page-Enter" content="revealTrans(duration=10, transition=4)"SCRIPT LANGUAGE="JavaScript"

var maxtime ="3";

function CountDown(){

if(maxtime=0){

minutes = Math.floor(maxtime/60);

seconds = Math.floor(maxtime%60);

msg = "你的文字说明"+minutes+"分"+seconds+"秒";//动态显示剩余时间。

document.all["timer"].innerHTML=msg;

//if(maxtime == 3) document.all["timer"].innerHTML='只剩3秒!';

--maxtime;

}

else{

clearInterval(timer);

document.all["timer"].innerHTML='123';

}

}

timer = setInterval("CountDown()",1000);

/SCRIPT

div id=timer/div

谁能给我一个倒计时的代码啊?

第一种:精确到秒的javascript倒计时代码

HTML代码:

form name="form1"

div align="center" align="center"

center离2010年还有:br

input type="textarea" name="left" size="35" style="text-align: center"

/center

/div

/form

script LANGUAGE="javascript"

startclock()

var timerID = null;

var timerRunning = false;

function showtime() {

Today = new Date();

var NowHour = Today.getHours();

var NowMinute = Today.getMinutes();

var NowMonth = Today.getMonth();

var NowDate = Today.getDate();

var NowYear = Today.getYear();

var NowSecond = Today.getSeconds();

if (NowYear 2000)

NowYear=1900+NowYear;

Today = null;

Hourleft = 23 - NowHour

Minuteleft = 59 - NowMinute

Secondleft = 59 - NowSecond

Yearleft = 2009 - NowYear

Monthleft = 12 - NowMonth - 1

Dateleft = 31 - NowDate

if (Secondleft0)

{

Secondleft=60+Secondleft;

Minuteleft=Minuteleft-1;

}

if (Minuteleft0)

{

Minuteleft=60+Minuteleft;

Hourleft=Hourleft-1;

}

if (Hourleft0)

{

Hourleft=24+Hourleft;

Dateleft=Dateleft-1;

}

if (Dateleft0)

{

Dateleft=31+Dateleft;

Monthleft=Monthleft-1;

}

if (Monthleft0)

{

Monthleft=12+Monthleft;

Yearleft=Yearleft-1;

}

Temp=Yearleft+'年, '+Monthleft+'月, '+Dateleft+'天, '+Hourleft+'小时, '+Minuteleft+'分, '+Secondleft+'秒'

document.form1.left.value=Temp;

timerID = setTimeout("showtime()",1000);

timerRunning = true;

}

var timerID = null;

var timerRunning = false;

function stopclock () {

if(timerRunning)

clearTimeout(timerID);

timerRunning = false;

}

function startclock () {

stopclock();

showtime();

}

// --

/script

第二种:某某运动会

HTML代码:

!--倒计时Javascript begin--

script language="JavaScript"

!--

function DigitalTime1()

{

var deadline= new Date("08/13/2007") //开幕倒计时

var symbol="8月13日"

var now = new Date()

var diff = -480 - now.getTimezoneOffset() //是北京时间和当地时间的时间差

var leave = (deadline.getTime() - now.getTime()) + diff*60000

var day = Math.floor(leave / (1000 * 60 * 60 * 24))

var hour = Math.floor(leave / (1000*3600)) - (day * 24)

var minute = Math.floor(leave / (1000*60)) - (day * 24 *60) - (hour * 60)

var second = Math.floor(leave / (1000)) - (day * 24 *60*60) - (hour * 60 * 60) - (minute*60)

var deadline_2= new Date("08/13/2004") //开幕后计时

var symbol_2="8月13日"

var now_2 = new Date()

var diff_2 = -480 - now.getTimezoneOffset() //是北京时间和当地时间的时间差

var leave_2 = (now_2.getTime() - deadline_2.getTime()) + diff_2*60000

var day_2 = Math.floor(leave_2 / (1000 * 60 * 60 * 24))

var hour_2 = Math.floor(leave_2 / (1000*3600)) - (day_2 * 24)

var minute_2 = Math.floor(leave_2 / (1000*60)) - (day_2 * 24 *60) - (hour_2 * 60)

var second_2 = Math.floor(leave_2 / (1000)) - (day_2 * 24 *60*60) - (hour_2 * 60 * 60) - (minute_2*60)

day=day+1;

day_2=day_2+1;

if (day0) //还未开幕

{

//LiveClock1.innerHTML = "现在"+symbol+"天"

LiveClock1.innerHTML = "font

setTimeout("DigitalTime1()",1000)

}

if (day0) //已经开幕

{

//LiveClock1.innerHTML = "现在离"+symbol+"还有"+day+"天"+hour+"小时"+minute+"分"+second +"秒"

LiveClock1.innerHTML = "font

setTimeout("DigitalTime1()",1000)

}

if (day==0) //正在开幕

{

//LiveClock1.innerHTML = "现在"+symbol+"天"

LiveClock1.innerHTML = "font

setTimeout("DigitalTime1()",1000)

}

if (day0 day_219) //某某运动会结束

{

//LiveClock1.innerHTML = "现在离"+symbol+"还有"+day+"天"+hour+"小时"+minute+"分"+second +"秒"

LiveClock1.innerHTML = "font

setTimeout("DigitalTime1()",1000)

}

}

// --

/script

!--倒计时Javascript end--

body onload=DigitalTime1()

div id= LiveClock1/div

/body 第三种:小时倒计时

HTML代码:

SCRIPT LANGUAGE="JavaScript"

!--

var maxtime = 60*60 //一个小时,按秒计算,自己调整!

function CountDown(){

if(maxtime=0){

minutes = Math.floor(maxtime/60);

seconds = Math.floor(maxtime%60);

msg = "距离结束还有"+minutes+"分"+seconds+"秒";

document.all["timer"].innerHTML=msg;

if(maxtime == 5*60) alert('注意,还有5分钟!');

--maxtime;

}

else{

clearInterval(timer);

alert("时间到,结束!");

}

}

timer = setInterval("CountDown()",1000);

//--

/SCRIPT

div id="timer" style="color:red"/div

第四种:最简倒计时

HTML代码:

Script Language="JavaScript"

!-- Begin

var timedate= new Date("January 14,2006");

var times="研究生考试";

var now = new Date();

var date = timedate.getTime() - now.getTime();

var time = Math.floor(date / (1000 * 60 * 60 * 24));

if (time = 0) ;

document.write("lifont color=#DEDBDE现在离2006年"+times+"还有: font color=#ffffffb"+time +"/b/font 天/font/li");

// End --

/Script

第五种:最简倒计时二

HTML代码:

script language="JavaScript" type="text/javascript"

function djs(){

var urodz= new Date("11/12/2008"); 

var now = new Date();

var num

var ile = urodz.getTime() - now.getTime();

var dni = Math.floor(ile / (1000 * 60 * 60 * 24));

if (dni 1)

num=dni+1

else if (dni == 1) num=2 

else if (dni == 0) num=1

else num=0 

document.write(num)

}

/script

距某某开幕式还有 [script language="JavaScript" type="text/javascript"djs()/script] 天

第五个:Javascript倒计时器 - 采用系统时间自校验

这次利用系统时间自校验倒计时, 无需手工调校使得倒计时更为精确, 代码及详细注释如下:

span id="clock"00:01:11:00/span

input id="startB" type="button" value="start countdown!" onclick="run()"

input id="endB" type="button" value="stop countdown!" onclick="stop()"

br

input id="diff" type="text"

input id="next" type="text"

script language="Javascript"

/* This notice must be untouched at all times.

countdown.js v. 1.0

The latest version is available at

Copyright (c) 2004 Xinyi.Chen. All rights reserved.

Created 7/30/2004 by Xinyi.Chen.

Web:

E-Mail: chenxinyi1978@hotmail.com

Last modified: 7/30/2004

This program is free software;

you can redistribute it and/or modify it under the terms of the

GNU General Public License as published by the Free Software Foundation;

See the GNU General Public License

at for more details.

*/

var normalelapse = 100;

var nextelapse = normalelapse;

var counter;

var startTime;

var start = clock.innerText;

var finish = "00:00:00:00";

var timer = null;

// 开始运行

function run() {

startB.disabled = true;

endB.disabled = false;

counter = 0;

// 初始化开始时间

startTime = new Date().valueOf();

// nextelapse是定时时间, 初始时为100毫秒

// 注意setInterval函数: 时间逝去nextelapse(毫秒)后, onTimer才开始执行

timer = window.setInterval("onTimer()", nextelapse);

}

// 停止运行

function stop() {

startB.disabled = false;

endB.disabled = true;

window.clearTimeout(timer);

}

window.onload = function() {

endB.disabled = true;

}

// 倒计时函数

function onTimer()

{

if (start == finish)

{

window.clearInterval(timer);

alert("time is up!");

return;

}

var hms = new String(start).split(":");

var ms = new Number(hms[3]);

var s = new Number(hms[2]);

var m = new Number(hms[1]);

var h = new Number(hms[0]);

ms -= 10;

if (ms 0)

{

ms = 90;

s -= 1;

if (s 0)

{

s = 59;

m -= 1;

}

if (m 0)

{

m = 59;

h -= 1;

}

}

var ms = ms 10 ? ("0" + ms) : ms;

var ss = s 10 ? ("0" + s) : s;

var sm = m 10 ? ("0" + m) : m;

var sh = h 10 ? ("0" + h) : h;

start = sh + ":" + sm + ":" + ss + ":" + ms;

clock.innerText = start;

// 清除上一次的定时器

window.clearInterval(timer);

// 自校验系统时间得到时间差, 并由此得到下次所启动的新定时器的时间nextelapse

counter++;

var counterSecs = counter * 100;

var elapseSecs = new Date().valueOf() - startTime;

var diffSecs = counterSecs - elapseSecs;

nextelapse = normalelapse + diffSecs;

diff.value = counterSecs + "-" + elapseSecs + "=" + diffSecs;

next.value = "nextelapse = " + nextelapse;

if (nextelapse 0) nextelapse = 0;

// 启动新的定时器

timer = window.setInterval("onTimer()", nextelapse);

}

/script

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。