Javascript 闪屏 setTimeout 问题。

Posted

技术标签:

【中文标题】Javascript 闪屏 setTimeout 问题。【英文标题】:Javascript splash screen setTimeout issue. 【发布时间】:2016-12-13 01:29:50 【问题描述】:

我一直在尝试让游戏开始时出现启动画面,它确实出现了,但它消失得太快了。试图在函数中创建 setTimeout,但它停止工作并完全破坏了代码。

var introimg;
var intro = true;
function gameStart() 
    ctx.clearRect(0,0,window.innerWidth, window.innerHeight);
    ctx.drawImage(introimg, 0,0,window.innerWidth, window.innerHeight);
//setTimeout(gameStart, 5000);



function setup()
    introimg = new Image();
    introimg.src = 'ICE/data/splash.png';


  document.addEventListener("touchstart", onTouchStart);
  document.addEventListener("touchmove", onTouchMove);
  document.addEventListener("touchend", onTouchEnd);


  gameStart();
  draw();



function draw()
  ctx.fillStyle = "rgba(0,0,0,0.1)";
  ctx.fillRect(0,0,window.innerWidth,window.innerHeight);

  for(var i = 0;i<ressources.length;i++)
    ressources[i].display();
  

  requestAnimationFrame(draw);

请帮忙。

提前谢谢你。

【问题讨论】:

您可能需要将setup 中的gameStart(); 替换为setTimeout(gameStart, 5000); 【参考方案1】:

将setTimeout移到gameStart函数外,即:

function gameStart() 
setTimeout(gameStart, 5000);

【讨论】:

应该在setup()

以上是关于Javascript 闪屏 setTimeout 问题。的主要内容,如果未能解决你的问题,请参考以下文章

javascript的setTimeout()与setTimeout()方法用法总结

JavaScript:在另一个 setTimeOut(嵌套 setTimeOut)中的 setTimeOut 以刺激 API 响应不起作用

JavaScript 类中的 setTimeout() 使用“this”

javascript 超时/睡眠使用 setTimeout()

Javascript setTimeout,闭包

JavaScript中SetInterval与setTimeout的用法详解