如何将document.createElement与elapsedTime一起使用?

时间:2019-05-04 14:23:03

标签: javascript html css

我正在为学校项目制作游戏。前提是屏幕右侧会出现敌人,您必须杀死它们。我设法创建了它们,使它们显示出来,但是我无法使它们不同时出现。 关于我应该如何进行的任何提示?

(对不起,如果措辞不好,我对这些事情还是很陌生的)

我已经尝试了使用elapsedTime函数实现目标谷值的不同方法,但是我似乎丝毫也无法做到这一点。

function createEnemy() {
  for(var i = 0; i < antallFiender; i++) {
    var nyFiende = document.createElement("img");
    nyFiende.setAttribute("src", "tenor.gif");
    nyFiende.setAttribute("class", "zombie");
    nyFiende.style.top = Math.floor(Math.random()*800) + "px";

    barnetEl.appendChild(nyFiende);
  }
  var zombieEl = document.querySelectorAll(".zombie");
}

1 个答案:

答案 0 :(得分:0)

您可以使用JavaScript setInterval函数。使用此功能,您可以在第一个参数中传递一个回调,并在第二个参数中传递一个时间间隔(以毫秒为单位),即两次调用之间的时间间隔。所以会是这样:

function createEnemy() {
  var nyFiende = document.createElement("img");
  nyFiende.setAttribute("src", "tenor.gif");
  nyFiende.setAttribute("class", "zombie");
  nyFiende.style.top = Math.floor(Math.random()*800) + "px";

  barnetEl.appendChild(nyFiende);
  var zombieEl = document.querySelectorAll(".zombie");
}

setInterval(createEnemy, 1000);

这样,每隔1秒钟就会调用您的函数来创建一个敌人。

如果要停止调用该函数,则应将间隔分配给变量,以便可以使用clearInterval来停止它,如下所示:

var enemyInterval = setInterval(createEnemy, 1000);

clearInterval(enemyInterval);

希望它对您有帮助。