所以我使用下面的代码创建了一个时钟,并希望在我的HTML网页中显示它。
例如Todays current time is:
我该怎么做?感谢。
<script>
function startTime() {
var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
m = checkTime(m);
s = checkTime(s);
document.getElementById('txt').innerHTML = h+":"+m+":"+s;
var t = setTimeout(function(){startTime()},500);
}
function checkTime(i) {
if (i<10) {i = "0" + i}; // add zero in front of numbers < 10
return i;
}
</script>
答案 0 :(得分:2)
你可以这样做:
<!DOCTYPE html>
<html>
<body>
The time is:<div id="txt"></div>
<script>
function startTime() {
var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
m = checkTime(m);
s = checkTime(s);
document.getElementById('txt').innerHTML = h+":"+m+":"+s;
var t = setTimeout(function(){startTime()},500);
}
function checkTime(i) {
if (i<10) {i = "0" + i}; // add zero in front of numbers < 10
return i;
}
startTime();
</script>
</body>
</html>
答案 1 :(得分:2)
这是jsfiddle:http://jsfiddle.net/Xx2ce/3/
首先,您要使用setInterval
代替setTimeout
还修复了代码中的其他错误
以下是代码:
function startTime() {
var d=new Date();
var h=d.getHours();
var m=d.getMinutes();
var s=d.getSeconds();
m = checkTime(m);
s = checkTime(s);
document.getElementById('txt').innerHTML = "Todays current time is: "+h+":"+m+":"+s;
}
function checkTime(i) {
var j = i;
if (i < 10) {
j = "0" + i;
}
return j;
}
setInterval(function() {
startTime();
}, 500);
对于HTML,您只需要:
<p id="txt"></p>
时钟会打勾...魔术呃? ))
答案 2 :(得分:1)