读书人

setTimeout()老是提示缺少对象请高手

发布时间: 2012-09-10 11:02:32 作者: rapoo

setTimeout()总是提示缺少对象,请高手帮忙
下面是我打的代码 浏览器总是提示缺少对象 不知什么原因 请高手指教 如果不用setTimeout() 在外面用setInterval()就是对的

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>递归调用</title>
</head>
<script>
fc();
function fc(){
var aa=document.getElementById("bb");
var red=Math.random()*255;
var green=Math.random()*255;
var blue=Math.random()*255;
aa.style.color="rgb("+red+","+green+","+blue+")";
setTimeout("fc()",500);
}

</script>
<body>

<div id="bb">JS将会随机改变这个文字的颜色</div>

</body>
</html>

[解决办法]
fc();
改成
window.onload = fc;

确保对象创建成功再调用
[解决办法]
在标签<body>中加上onload事件 调用fc()函数
[解决办法]
页面加载完成后再调用函数fc(); 否则var aa=document.getElementById("bb");这个元素不存在
[解决办法]

探讨

fc();
改成
window.onload = fc;

确保对象创建成功再调用

读书人网 >JavaScript

热点推荐