Как взять класс элемента которого создал не html a js
Мне нужно взять класс элемента который создал JS уже все перепробовал ничего не работает и className и setattribute
let variants = [1, 2];
let start = document.getElementById("Start");
let br = document.createElement("br")
let i;
function StartGame() {
start.hidden = true;
for (i = 0; i < 15; i++) {
let butt = document.createElement("button");
butt.classList.add("butt")
butt.innerHTML = "0";
document.body.append(butt);
};
};
/*if(i === 15){
i = 0;
document.body.append(br);
};
*/
function randomInteger(min, max) {
let rand = min - 0.5 + Math.random() * (max - min + 1);
return Math.round(rand);
}
let butts = document.querySelectorAll(".butt");
butts.onclick = function() {
alert(randomInteger(1, 3));
}
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
let variants = [1, 2];
let start = document.getElementById("Start");
let br = document.createElement("br")
let i;
function StartGame() {
//start.hidden = true;
for (i = 0; i < 15; i++) {
let butt = document.createElement("button");
butt.classList.add("butt")
butt.innerHTML = "0";
document.body.append(butt);
};
document.querySelectorAll('.butt').forEach((el) => {
el.addEventListener('click', () => {
alert(randomInteger(1, 3));
});
});
};
function randomInteger(min, max) {
let rand = min - 0.5 + Math.random() * (max - min + 1);
return Math.round(rand);
}
StartGame();
.butt {
border: qpx solid blue;
}
let variants = [1, 2];
let start = document.getElementById("Start");
let br = document.createElement("br")
let i;
function StartGame() {
//start.hidden = true;
for (i = 0; i < 15; i++) {
let butt = document.createElement("button");
butt.classList.add("butt")
butt.innerHTML = "0";
document.body.append(butt);
};
};
function randomInteger(min, max) {
let rand = min - 0.5 + Math.random() * (max - min + 1);
return Math.round(rand);
}
// Через делегирование
document.addEventListener('click', event => {
if (event.target.className === 'butt') {
alert(randomInteger(1, 3));
}
});
StartGame();
.butt {
border: qpx solid blue;
}