我正试图为我的网站做一个倒计时计时器,我做了所有的编码,但计时器不出现.我是用dreamweaver做的
I am trying to make a countdown timer for my website and I have all the coding done, but the timer does not show up. Im doing it in dreamweaver
这是我的HTML代码,我用这个网站来帮助我做代码,但我仍然不能得到代码的工作。这是我的个人网站,我正在为我和我的朋友。http://forum.codecall.net/topic/51639-how-to-create-a-countdown-timer-in-javascript/
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>final proj</title>
<script type="text/javascript" src="Timer.js" />
</head>
<body>
<div id='timer' />
<script type="text/javascript">window.onload = CreateTimer("timer",30);
</script>
<body>
<div id='timer' />
<script type="text/javascript">window.onload = CreateTimer("timer",30);
</script>
</body>
</html>
这是我的javascript代码
var Timer;
var TotalSeconds;
function CreateTimer(TimerID, Time) {
"use strict";
Timer = document.getElementById(TimerID);
TotalSeconds = Time;
UpdateTimer();
window.setTimeout("Tick()", 1000);
}
function Tick() {
"use strict";
if (TotalSeconds <=0) {
alert("Times UP!");
return;
}
TotalSeconds -= 1;
UpdateTimer();
window.setTimeout("Tick(), 1000");
}
function UpdateTimer() {
"use strict";
var Seconds = TotalSeconds;
var Days = Math.floor(Seconds / 86400);
Seconds -= Days * (86400);
var Hours = Math.floor(Seconds / 3600);
Seconds -= Hours * (3600);
var Minutes = Math.floor(Seconds / 60);
Seconds -= Minutes * (60);
var TimeStr = ((Days > 0)) ? Days + "days ": "") + LeadingZero(Hours) + ":" + LeadingZero(Minutes) + ":" + LeadingZero(Seconds)
Timer.innerHTML = TimeStr;
}
function LeadingZero(Time) {
"use strict";
return (Time < 10) ? "0" + Time : + Time;
}
我都不能让它出现,更别说倒计时了。我试图让它显示多少天,小时,分钟,直到一个日期。
我认为这是因为在您的代码中有一个不需要的右括号:var TimeStr = ((Days)) ...
,这会抛出错误,因此没有任何工作
此外,您的setTimeout
呼叫有问题,如@taxicala所述。
看一下下面的工作代码片段:
var Timer;
var TotalSeconds;
function CreateTimer(TimerID, Time) {
Timer = document.getElementById(TimerID);
TotalSeconds = Time;
UpdateTimer();
window.setTimeout(Tick, 1000);
}
function Tick() {
if (TotalSeconds <= 0) {
alert("Times UP!");
return;
}
TotalSeconds -= 1;
UpdateTimer();
window.setTimeout(Tick, 1000);
}
function UpdateTimer() {
var Seconds = TotalSeconds;
var Days = Math.floor(Seconds / 86400);
Seconds -= Days * 86400;
var Hours = Math.floor(Seconds / 3600);
Seconds -= Hours * 3600;
var Minutes = Math.floor(Seconds / 60);
Seconds -= Minutes * 60;
var TimeStr = Days > 0 ? Days + "days " : "" + LeadingZero(Hours) + ":" + LeadingZero(Minutes) + ":" + LeadingZero(Seconds);
Timer.innerHTML = TimeStr;
}
function LeadingZero(Time) {
return (Time < 10) ? "0" + Time : +Time;
}
CreateTimer('timer', 5);
<div id="timer" />
setTimeout
接收对函数或匿名函数的引用作为第一个参数,并接收一个整数,其中包含所需的毫秒数,之后该函数应从事件循环中执行,作为第二个参数。
:
window.setTimeout("Tick(), 1000");
应:window.setTimeout(Tick, 1000);
传递的是字符串,而不是两个必需的形参。
但是,您可以传递一个字符串作为第一个参数,看起来像这样:window.setTimeout("Tick()", 1000);
相关文章:
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- 设置倒计时计时器,IE出现问题
- MobileFirst:在客户端运行计时器作业-最佳选项
- 显示具有服务器端自动时间注销的同步倒计时计时器
- 倒计时计时器应该持续两个php页面
- 在Jquery倒计时计时器上设置每个数字的动画
- 我如何才能确保计时器设置为每天4点半,所以我不会;不用在Javascript中提及某个日期
- 如何禁用窗口.当计时器超时时,打开卸载警报
- 在Nodejs中为许多用户处理计时器
- 如果弹出窗口关闭,Javascript停止/重置计时器
- 如何在隐藏时暂停jquery计时器
- Javascript倒计时计时器倒计时未正确更新秒/分钟
- 计时器循环从不运行
- Progressbar计时器,仅在页面刷新时重新加载
- 创建一个倒计时计时器脚本,该脚本计算声音文件的持续时间,而不是特定的日期
- 递归倒计时计时器
- Jquery时间启动计时器,我有一个计时器的代码,但它在页面加载时启动
- 试图创建一个24小时计时器来重置自己
- 在JS中设置计时器1秒
- 我正试图为我的网站做一个倒计时计时器,我做了所有的编码,但计时器不出现.我是用dreamweaver做的