| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2559 人关注过本帖
标题:为什么我调用setInterval() 方法没有效果呢
只看楼主 加入收藏
czg123698741
Rank: 2
等 级:论坛游民
帖 子:348
专家分:84
注 册:2009-3-4
结帖率:78.99%
收藏
已结贴  问题点数:1 回复次数:6 
为什么我调用setInterval() 方法没有效果呢
大家好,请帮帮忙~~~~~~
我自己用JavaScript写了个时钟的程序,但是不知道为什么,我尝试过使用setTimeout() 方法 && setInterval() 方法,来令HTLM显示的时间自己跳动起来,但是最终还是失败啊!

效果图:
图片附件: 游客没有浏览图片的权限,请 登录注册


请指点一下谢谢~~~~~

clock.rar (21.45 KB)
搜索更多相关主题的帖子: 效果 setInterval 
2009-11-29 20:24
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
收藏
得分:1 
定时器 改变innerHTML
2009-11-30 09:24
foktime
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:奥斯维辛
等 级:贵宾
威 望:35
帖 子:795
专家分:2742
注 册:2009-9-4
收藏
得分:0 
调好了
程序代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. xmlns="http://www. http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<script type="text/javascript">
function $(id){ 
    return document.getElementById(id); 
} 
function showTime(){
    setInterval(clock,1000);
}
function clock(){

    var myDate = new  Date();
    var year = myDate.getFullYear();
    var year = new String(year);
    
    var month = myDate.getMonth()+1;
    var month = new String(month);
    
    var date = myDate.getDate();
    var date = new String(date);
    
    var hour = myDate.getHours();
    var hour = new String(hour);
    
    var minute = myDate.getMinutes();
    var minute = new String(minute);
    
    var second = myDate.getSeconds();
    var second = new String(second);
    var str = '';
    str += year+"年"+month+"月"+date+"日"+hour+"时"+minute+"分"+second+"秒";
    var ret_y="";
    var array_year=year.split("");
    for(var i=0;i<array_year.length;i++){
        ret_y+='<img src="'+array_year[i]+'.gif">';
        }
    str += ret_y;
    str += "年\t";
    //$('showtime').innerHTML= str;
    var ret_m="";
    var array_month=month.split("");
    for(var i=0;i<array_month.length;i++){
        ret_m+='<img src="'+array_month[i]+'.gif">';
        }
    str += ret_m;
    str += "月\t";
    
    var ret_d="";
    var array_date=date.split("");
    for(var i=0;i<array_date.length;i++){
        ret_d+='<img src="'+array_date[i]+'.gif">';
        }
    str += ret_d;
    str += "日\t";
    
    var ret_h="";
    var array_hour=hour.split("");
    for(var i=0;i<array_hour.length;i++){
        ret_h+='<img src="'+array_hour[i]+'.gif">';
        }
    str += ret_h;
    str += "时\t";
    
    var ret_m="";
    var array_minute=minute.split("");
    for(var i=0;i<array_minute.length;i++){
        ret_m+='<img src="'+array_minute[i]+'.gif">';
        }
    str += ret_m;
    str += "分\t";
    
    var ret_s="";
    var array_second=second.split("");
    for(var i=0;i<array_second.length;i++){
        ret_s+='<img src="'+array_second[i]+'.gif">';
        }
    str += ret_s;
    str += "秒\t";
    $('showtime').innerHTML = str;
}
</script>

<!--我尝试过使用setTimeout() 方法 && setInterval() 方法,来令HTLM显示的时间自己跳动起来,但是最终还是失败啊!-->
<body onload="showTime()">
<div id="showtime"></div>
</body>
</html>

2009-11-30 09:26
czg123698741
Rank: 2
等 级:论坛游民
帖 子:348
专家分:84
注 册:2009-3-4
收藏
得分:0 
回复 3楼 foktime
你好!~~~~谢谢你的帮助,您的代码我优化了一下,大致没有变化~~~~~~我还有不明白的是,settimeout()方法和setinterval()方法都要放在类似与<DIV>之类的"容器"里面运行吗???

源代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<script type="text/javascript">

/*function $(id){
    return document.getElementById(id);
}*/
//这段去掉~~~~~~~~~


function showTime(){
    setInterval(clock,1000);
}
function clock(){

    var myDate = new  Date();
    var year = myDate.getFullYear();
    var year = new String(year);
   
    var month = myDate.getMonth()+1;
    var month = new String(month);
   
    var date = myDate.getDate();
    var date = new String(date);
   
    var hour = myDate.getHours();
    var hour = new String(hour);
   
    var minute = myDate.getMinutes();
    var minute = new String(minute);
   
    var second = myDate.getSeconds();
    var second = new String(second);
    var str = '';
    str += year+"年"+month+"月"+date+"日"+hour+"时"+minute+"分"+second+"秒";
    var ret_y="";
    var array_year=year.split("");
    for(var i=0;i<array_year.length;i++){
        ret_y+='<img src="'+array_year[i]+'.gif">';
        }
    str += ret_y;
    str += "年\t";
    //$('showtime').innerHTML= str;
    var ret_m="";
    var array_month=month.split("");
    for(var i=0;i<array_month.length;i++){
        ret_m+='<img src="'+array_month[i]+'.gif">';
        }
    str += ret_m;
    str += "月\t";
   
    var ret_d="";
    var array_date=date.split("");
    for(var i=0;i<array_date.length;i++){
        ret_d+='<img src="'+array_date[i]+'.gif">';
        }
    str += ret_d;
    str += "日\t";
   
    var ret_h="";
    var array_hour=hour.split("");
    for(var i=0;i<array_hour.length;i++){
        ret_h+='<img src="'+array_hour[i]+'.gif">';
        }
    str += ret_h;
    str += "时\t";
   
    var ret_m="";
    var array_minute=minute.split("");
    for(var i=0;i<array_minute.length;i++){
        ret_m+='<img src="'+array_minute[i]+'.gif">';
        }
    str += ret_m;
    str += "分\t";
   
    var ret_s="";
    var array_second=second.split("");
    for(var i=0;i<array_second.length;i++){
        ret_s+='<img src="'+array_second[i]+'.gif">';
        }
    str += ret_s;
    str += "秒\t";


    //$('showtime').innerHTML = str;  这段改为~~~~~~
    document.getElementById("showtime").innerHTML=str;
}
</script>

<!--我觉得这样更加容易理解!!!-->
<body onload="showTime()">
<div id="showtime"></div>
</body>
</html>
2009-11-30 17:59
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
收藏
得分:0 
有区别吗?
2009-12-01 08:54
foktime
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:奥斯维辛
等 级:贵宾
威 望:35
帖 子:795
专家分:2742
注 册:2009-9-4
收藏
得分:0 
回复 5楼 aspic
咱找个墙角玩泥巴去吧
2009-12-01 09:13
czg123698741
Rank: 2
等 级:论坛游民
帖 子:348
专家分:84
注 册:2009-3-4
收藏
得分:0 
(*^__^*) 嘻嘻……
2009-12-01 17:30
快速回复:为什么我调用setInterval() 方法没有效果呢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019015 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved