如果两个div添加了一个类。所有类都必须删除

问题描述 投票:0回答:1

我的代码有点问题。如果我单击2个div,它们会显示一个随机数,但如果我单击第三个div。我的所有号码都必须删除,但它不起作用。有人能帮我吗?

let mijnDivs = document.querySelectorAll("div")
let i = 0
while (i<mijnDivs.length) {
  mijnDivs[i].addEventListener("click", toevoegen)
  i++
}
function toevoegen(event) {
  console.log("het werkt")
  let nummer = randomNumber(1,9)
  this.innerHTML = nummer
  this.classList.toggle("zichtbaar")
  if (this.classList.contains("zichtbaar").length === 2) {
    console.log("yay")
  }
}
function randomNumber (min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
}
javascript html random
1个回答
0
投票

@julie,如果我理解正确的话,当点击相同的div时,前两次它应该显示随机数。它应该第三次清除它。如果我的理解是正确的,那么问题是classList.toggle不会继续添加类。如果它存在,则删除它,如果它不存在,则添加它。永远不会出现this.classList.contains("zichtbaar").length大于1的情况。

解决方案可能是存储数据属性中的点击次数,并检查它是否需要生成随机数或清除它。 MDN参考:https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes

© www.soinside.com 2019 - 2024. All rights reserved.