向循环创建的元素添加函数/方法

时间:2019-04-14 10:38:09

标签: javascript loops

我想创建一个包含div元素的行,当它单击时将包含一个函数。问题是创建时i变量不是i变量,而是5。这对我来说没有任何意义,因为循环应在4之后停止?任何帮助表示赞赏!

function drawInstruments() {
  for (var i = 0; i < instruArray.length; i++) {
    var div = document.createElement("div");
    instruArray[i].image.style.width = "120px";
    instruArray[i].image.style.height = "120px";

    div.id = instruArray[i].navn;
    div.className = "divInstru";

    div.onclick =function() {
      console.log(i);

      if (gameSlide < instruArray.length) { 

        if (started == false && (Date.now()-time >= 1000 )) {
          checkRight(i);
          stopSound();
        }
      }
    }

    div.appendChild(instruArray[i].image);
    div.innerHTML += "<br>" + instruArray[i].navn;
    instruDiv.appendChild(div);
   }
}

0 个答案:

没有答案