計時器的js代碼(計時器的js代碼是多少)

本文目錄一覽:

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

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/236052.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 11:58
下一篇 2024-12-12 11:58

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29
  • 怎麼寫不影響Python運行的長段代碼

    在Python編程的過程中,我們不可避免地需要編寫一些長段代碼,包括函數、類、複雜的控制語句等等。在編寫這些代碼時,我們需要考慮代碼可讀性、易用性以及對Python運行性能的影響。…

    編程 2025-04-29
  • 北化教務管理系統介紹及開發代碼示例

    本文將從多個方面對北化教務管理系統進行介紹及開發代碼示例,幫助開發者更好地理解和應用該系統。 一、項目介紹 北化教務管理系統是一款針對高校學生和教職工的綜合信息管理系統。系統實現的…

    編程 2025-04-29

發表回復

登錄後才能評論