请帮我看看这个定时器用的有什么问题

ren180514 2017-04-19 10:50:55
我想让背景颜色进行渐变,这个代码写完后DIV的背景色一下就变了,没有出现渐变的效果
请帮我看看是哪里出的问题?

setTimeout定时器的函数语句用不用加 ' ' (引号)呀? ColorFlash函数里的setTimeout定时器要是加引号就不执行,要是不加背景虽然变色,但是没有渐变的效果。

<html>
<head>
<meta charset='utf-8'/>
<title></title>
<style>
#block{
width:400px;
}
</style>

<script>
function catchEvent(eventObj,evnt,eventHandler){
if(eventObj.addEventListener)
{
eventObj.addEventListener(evnt,eventHandler,false);
}
else if(eventObj.attachEvent)
{
evnt='on'+evnt;
eventObj.attachEvent(evnt,eventHandler);
}
}

catchEvent(window,'load',setupping);

function setupping(){
document.getElementById('block').style.background='#ffffff';
setTimeout('ColorFlash(255)',2000);
}

function ColorFlash(newColor){
var hexVal=newColor.toString(16);

if(hexVal.length<02){
hexVal='0'+hexVal;
}

var colorString='#ffff'+hexVal;

var blockDiv=document.getElementById('block');

blockDiv.style.background=colorString;

if(newColor>0){
newColor=newColor-5;
setTimeout(ColorFlash(newColor),1550);
}
}

</script>
</head>

<body>
<div id="block">
<h1>Hello</h1>
</div>
</body>
</html>
...全文
108 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ren180514 2017-04-19
  • 打赏
  • 举报
回复
谢谢,真的好了,您说的调用和引用有没有相关的文章推荐一下,谢谢!!!
似梦飞花 2017-04-19
  • 打赏
  • 举报
回复

setTimeout(function(){ColorFlash(newColor)},1550);
注意调用和引用

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧