000547航天发展 - 百度:javascript高手来啊!!!

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 15:37:09
我只是想在页面中每隔两秒自动输出自加的结果,可就是不对。
有希望高手能告诉我错在哪里了,

<html>
<head>
<script language="JavaScript">

ch();
function ch(){
var y,x=10;
y=Math.floor(Math.random()*10);
x=x+y;
document.write(x);
setTimeout("ch()",2000);
}

</script>
</head>
<body>
</body>
</html>

每一次都从10开始加的,不累加上一次的结果

<html>
<head>
<script language="JavaScript">
function ch(){
var y,x=10;
y=Math.floor(Math.random()*10);
x=x+y;
//document.write(x);
//在网页里加一个能放置其它内容的容器,比如<div>
//使它内部的内容=x
id1.innerHTML=x;
setTimeout("ch()",2000);
}

</script>
</head>
<!--在body加载时启动-->
<body onload=ch()>
<div id=id1></div>
</body>
</html>

结果累加的版本

<html>
<head>
<script language="JavaScript">
var y,x=10;
function ch(){
y=Math.floor(Math.random()*10);
x=x+y;
//document.write(x);
//在网页里加一个能放置其它内容的容器,比如<div>
//使它内部的内容=x
id1.innerHTML=x;
setTimeout("ch()",2000);
}

</script>
</head>
<!--在body加载时启动-->
<body onload=ch()>
<div id=id1></div>
</body>
</html>

<html>
<head>
<script language="JavaScript">
function ch(){
var y,x=10;
if(ok.value=="开始"){
y=Math.floor(Math.random()*10);
}
else{
y=new Number(ok.value);
}
x= x+y;
ok.value=x;
setTimeout("ch()",2000);
}

</script>
</head>
<body>
<input type=button name=ok onclick="ch()" value="开始">
</body>
</html>

"每隔两秒自动输出自加的结果"
应该用setInterval
不是setTimeout吧

第四行的ch();要放到函数声明之后,因为函数要先声明才能调用执行