回 帖 发 新 帖 刷新版面

主题:提问:关于settimeout方法

我写了一段代码,显示一个文本框,文本框中显示时间,时间不断改变,就像一个时钟一样。如下:
1   <form name=ThisForm>
2   现在的时间是:<input type=text name=txtTime size=20><br>
3   </form>
4   <script language=vbscript>
5    Function ShowTime
6     Document.ThisForm.txtTime.value=CStr(time)
7      settimeout "ShowTime",1000
8    End Function 
9   settimeout "ShowTime",1000
10  </script>
可是我觉得第7行的 settimeout "ShowTime",1000 可以去掉,但是去掉之后时间就不再改变了,我怎么都想不通.那位高手给指点一下.谢谢.

回复列表 (共8个回复)

沙发

第7行起到一个循环的作用,使得ShowTime有间断地不停运行

板凳

还是不明白,第9行不是能起同样的作用吗?

3 楼

第9行只能起到执行一次的作用

看来你没大理解这个函数的作用
它的意思是,在给定时间之后,执行指定的函数。(当然,执行一次)

这样解释明白了吗?

4 楼

原来如此,我还以为settimeout函数每隔一定的时间就重复执行showtime函数呢,书上可是这样讲的啊。万分感谢。

5 楼

你所说的重复执行是setInterval函数~~

6 楼

果然是这样,多谢你的帮助。

7 楼

那么说第九行是调用
第七行才循环罗?

8 楼

为何将第9行改成
call showtime ( )
又不行了呢??????

我来回复

您尚未登录,请登录后再回复。点此登录或注册