首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

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

2012-09-10 
setTimeout()总是提示缺少对象,请高手帮忙下面是我打的代码浏览器总是提示缺少对象不知什么原因请高手指教

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;

确保对象创建成功再调用

热点排行