我正在尝试使用setInterval代码对对象进行“动画处理”,但是我遇到了3个问题之一;
- 没发生什么事
-编码后的内容似乎都会做出更改,但随后会停止更改(可能只执行一次)
-div编码似乎从屏幕上消失了
有人知道哪里出问题了吗?我键入console.log("Text");
,它运行良好。 (此外,我很抱歉,但我不知道如何在此网站上设置格式)
var everyFrame=function()
{
skyRed=skyRed+1;
skyGreen=skyGreen-0.3;
skyBlue=skyBlue-0.7;
orangeFishMoveDown=orangeFishMoveDown+0.025;
orangeFishMoveRight=orangeFishMoveRight+.05;
sky.style.backgroundColor='rgb('+skyRed+','+skyGreen+','+skyBlue+')';
orangeFish.style.top=orangeFishMoveDown+'px';
orangeFish.style.left=orangeFishMoveRight+'px';
};
window.setInterval(everyFrame, 33);
最佳答案
将变量声明为数字而不是字符串
var skyRed = 0;
否则,它将在
skyRed=skyRed+1;
中串联为一个字符串,而不添加。看这里:
var skyRed = '0';
var skyRed1 = 0;
console.log('wrong:' + (skyRed + 1), 'correct: ' + (skyRed1 + 1));
关于javascript - window.setInterval不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47127995/