重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
定时器在js中的应用非常广泛,比如首页的轮播图效果,网页的时钟,秒杀倒计时等,都是采用定时器来实现的。
公司主营业务:成都网站制作、成都网站建设、外贸营销网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出淇县免费做网站回馈大家。
主要提供了两种定时器:
script type="text/javascript"
//一次性
window.setTimeout(function () {
alert(1);
},1000)
//周期性
window.setInterval(function () {
alert(2);
},1000)
/script
//试试这个吧
!DOCTYPE html
html lang="en"
head
meta charset="UTF-8"
titleDocument/title
/head
body
div id="time"/div
script
!--
var maxtime = 60*60 //一个小时,按秒计算,自己调整!
function CountDown(){
if(maxtime=0){
minutes = Math.floor(maxtime/60);
seconds = Math.floor(maxtime%60);
minutes = minutes=10?minutes:'0'+minutes;
seconds = seconds=10?seconds:'0'+seconds;
msg = "距离结束还有"+minutes+"分"+seconds+"秒";
document.all["time"].innerHTML=msg;
if(maxtime == 5*60) alert('注意,还有5分钟!');
--maxtime;
}else{
clearInterval(timer);
alert("时间到,结束!");
}
}
timer = setInterval("CountDown()",1000);
//--
/script
/body
/html
// html
div当前时间为:span id="timeNow"/span /div
button id="timeBegin"计时开始/button
button id="timeEnd"计时结束/button
button id="timeClear"计时清除/button
// Javascript
script type="text/javascript"
//定义初始值 计时器
var count = 0;
var timer = "";
//开始计时
function BeginTime(){
var beginBtn = document.getElementById("timeBegin");
beginBtn.onclick = function(){
timer = setInterval(function(){
count ++ ;
document.getElementById("timeNow").innerHTML = count / 100;
},10)
}
}
//结束计时
function EndTime(){
var endBtn = document.getElementById("timeEnd");
endBtn.onclick = function(){
clearInterval(timer);
}
}
//计时清除
function ClearTime(){
var clearBtn = document.getElementById("timeClear");
clearBtn.onclick = function(){
document.getElementById("timeNow").innerHTML = "";
}
}
BeginTime();
EndTime();
ClearTime();
/script
// The Harder You Work, The Luckier You Will Be. (Jensonhui.com)
settimeout在load之后便开始计时10秒后执行一个方法
settimeout(fun,time);参数只能为函数而不是一个表达式
如果参数为表达式则直接运行而不会计时后运行
如:settimeout(alert("test"),5000)等价于alert("test")
如有疑惑欢迎追问
你这相当于给内层的定时器搞了个死循环,每1秒就会创建一个定时器,6秒过去就表示已经创建6个定时器了,每个定时器的开始时间相差1秒,当然6秒后就会每秒弹出一次啦,12秒后每秒会弹出两次,以此类推……你这样持续运行下去会创建无数个定时器,那时候每秒估计会弹出很多很多hello~然后电脑估计要炸了~~如果问题解决了,记得采纳哦~~
参考下面代码:
script type="text/javascript"
function getRTime(){
var EndTime= new Date('%=datas%'); //datas是数据库的时间
var NowTime = new Date();
var t =EndTime.getTime() - NowTime.getTime();
if(t=0){
var d=Math.floor(t/1000/60/60/24);
var h=Math.floor(t/1000/60/60%24);
var m=Math.floor(t/1000/60%60);
var s=Math.floor(t/1000%60);
document.getElementById("t_d").innerHTML = d;
document.getElementById("t_h").innerHTML = h;
document.getElementById("t_m").innerHTML = m;
document.getElementById("t_s").innerHTML = s;
}
}
setInterval(getRTime,1000);
/script