javascript 时间为什么不会跳动???

来源:百度知道 编辑:UC知道 时间:2024/05/23 12:26:39
代码如下:
<script type="text/javascript">
var now=new Date();
function week(){
var n="";
switch (now.getDay()){
case 0: n="星期日";break;
case 1: n="星期一";break;
case 2: n="星期二";break;
case 3: n="星期三";break;
case 4: n="星期四";break;
case 5: n="星期五";break;
case 6: n="星期六";break;
}
return (n);
}
function time(){
document.getElementById("nian").innerHTML = now.getYear()+"年"+(now.getMonth()+1)+"月";
document.getElementById("ri").innerHTML = now.getDate();
document.getElementById("week").innerHTML =week();
document.getElementById("time").innerHTML=now.toLocaleTimeString()
}
setInterval("time()",1000)

因为你的now 初始化后没有变,始终是一个值。
在time()方法中加上 now = new Date()

<script type="text/javascript">
function week(now){
var n="";
switch (now.getDay()){
case 0: n="星期日";break;
case 1: n="星期一";break;
case 2: n="星期二";break;
case 3: n="星期三";break;
case 4: n="星期四";break;
case 5: n="星期五";break;
case 6: n="星期六";break;
}
return (n);
}
function time(){
var now=new Date();
document.getElementById("nian").innerHTML = now.getYear()+"年"+(now.getMonth()+1)+"月";
document.getElementById("ri").innerHTML = now.getDate();
document.getElementById("week").innerHTML =week(now);
document.getElementById("time").innerHTML=now.toLocaleTimeString()
}
setInterval("time()",1000)