一般来调用函数,比如上节,如果想让网页上显示动态的时间。我们可以修改上节的代码如下(贴整个html文件):

HTML语言: Codee#8348
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
  <TITLE> New Document </TITLE>
</HEAD>
<BODY>
<div id="LookHere" style="color:red"></div>
<SCRIPT LANGUAGE="JavaScript">
function showTime(){
    var today=new Date();
    var hours=today.getHours();
    var minutes=today.getMinutes();
    var seconds=today.getSeconds();
    var times=(hours>12)?"下午":"上午";
    times+=(hours>12)?hours-12+"时":hours+"时";
    times+=minutes+"分";
    times+=seconds+"秒";
    var xingqi=new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");
    var str="<p>现在是:"+today.getFullYear()+"年"+ (today.getMonth()+1)+"月"+today.getDate()+"日"+xingqi[today.getDay()]+times+"</p>";
    LookHere.innerHTML=str;
    setTimeout("showTime()",1000);
}
    showTime();
</SCRIPT>
</BODY>
</HTML>

在这里不能用document.write,因为write方法在网页加载以后再调用,属于非法操作,所以得不到你预想的效果。需要提一下的是 innerHTML在写入的时候会覆盖此以前的内容,而document.write是追加。

以上的程序,还可以用setInteval方法,用法就是setInteval 写在方法外面。去掉showTime()这句话。他们的区别如下:

他们的语法基本上相同,但是完成的功能有区别:
setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。
setInterval方法则是表示间隔一定时间反复执行某操作。

但是setInterval用在这里的不足就是,页面加载一秒以后才显示时间。

—-2008/12/01

Tags: ,

Related posts

Tags: ,.
Home

No Comments Now!

Be the first to comment on this entry.

Leave a comment

Name(required)
Mail (required),(will not be published)
Website(recommended)

Fields in bold are required. Email addresses are never published or distributed.

Some HTML code is allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
URLs must be fully qualified (eg: http://hanghang.name),and all tags must be properly closed.

Line breaks and paragraphs are automatically converted.

Please keep comments relevant. Off-topic, offensive or inappropriate comments may be edited or removed.