Estoy tratando de agregar una clase a un párrafo generado por js, pero no funciona. También he intentado agregar estilo directamente al elemento DOM, pero tampoco funciona. ¿Qué estoy haciendo mal?
var dataCurent = new Date(); var minut = dataCurent.getMinutes(); var vector = [1, 2, 3, 4, 5]; function ParagrafNou() { for (let i = 0; i < Math.max(10, minut); i++) { var index = Math.random(vector); var paragraf = document.createElement('p'); var continut = document.createTextNode('Ilie Andrei-Virgil '); paragraf.style.fontSize = 'xxx-large'; if (index == 1) paragraf.classList.add('clasa1'); if (index == 2) paragraf.classList.add('clasa2'); if (index == 3) paragraf.classList.add('clasa3'); if (index == 4) paragraf.classList.add('clasa4'); if (index == 5) paragraf.classList.add('clasa5'); document.body.appendChild(paragraf.appendChild(continut)); } } ParagrafNou() .clasa1 { color: red; } .clasa2 { color: blue; } .clasa3 { color: green; } .clasa4 { color: black; } .clasa5 { color: orange; } var dataCurent = new Date(); var minut = dataCurent.getMinutes(); var vector = [1, 2, 3, 4, 5]; function ParagrafNou() { for (let i = 0; i < Math.max(10, minut); i++) { var index = vector[Math.floor(Math.random() * vector.length)]; var paragraf = document.createElement('p'); var continut = document.createTextNode('Ilie Andrei-Virgil '); paragraf.style.fontSize = 'xxx-large'; if (index == 1) paragraf.classList.add('clasa1'); if (index == 2) paragraf.classList.add('clasa2'); if (index == 3) paragraf.classList.add('clasa3'); if (index == 4) paragraf.classList.add('clasa4'); if (index == 5) paragraf.classList.add('clasa5'); paragraf.appendChild(continut) document.body.appendChild(paragraf); } } ParagrafNou() .clasa1 { color: red; } .clasa2 { color: blue; } .clasa3 { color: green; } .clasa4 { color: black; } .clasa5 { color: orange; }Math.random() devolverá un valor entre 0 inclusive, pero no 1, que no es el índice que está utilizando en las siguientes declaraciones if.
Para obtener un índice aleatorio de una matriz vector , debe usar:
var index = Math.floor(Math.random() * vector.length);