Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

148
Vistas
El color de fondo no cambiará en función de una cadena de matriz

así que estoy tratando de hacer un proyecto que encontré en https://jsbeginners.com/hex-change-background-color-project/ donde tengo un botón y cuando se hace clic, cambia el color del fondo acompañado de un código hexadecimal para el color. He visto algunas soluciones, pero me pregunto por qué la mía no funciona.

JavaScript:

 const colors = ['#C78283;', '#B80C09;', '#6B2B06;', '#E5E7E6;', '#B7B5B3;', '#CBE896;', '#FFFFFC;', '#FF7F11;', '#FF1B1C;', '#493657;', '#CE7DA5;', '#BEE5BF;', '#DFF3E3;', '#FFD1BA;', '#EF233C;', '#FCAF58;', '#FF8C42;', '#F4B860;']; btn.addEventListener('click', ()=> { span.innerText= colors[Math.floor(Math.random() *colors.length)]; document.body.style.background.color = colors.values; });

todo funciona, incluido el intervalo que cambia a un código hexadecimal aleatorio de la matriz, excepto el color de fondo, no cambia. alguien puede ayudar?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Problemas.

  • No debería haber ninguno ; en la lista de colores.
  • Establecer el color de fondo con colors.values es incorrecto. colors es una matriz. Así que tienes que acceder usando el índice correcto
  • El fondo debe configurarse con document.body.style.backgroundColor

He redefinido el código manteniendo el color aleatorio en una cadena y configurando el mismo valor para abarcar el contenido y el color de fondo.

 const btn = document.getElementById('btn'); const span = document.getElementById('hex'); const colors = ['#C78283', '#B80C09', '#6B2B06', '#E5E7E6', '#B7B5B3', '#CBE896', '#FFFFFC', '#FF7F11', '#FF1B1C', '#493657', '#CE7DA5', '#BEE5BF', '#DFF3E3', '#FFD1BA', '#EF233C', '#FCAF58', '#FF8C42', '#F4B860']; btn.addEventListener('click', () => { const color = colors[Math.floor(Math.random() * colors.length)]; span.innerText = color; document.body.style.backgroundColor = color; });
 <button id="btn">Click Me</button> <span id="hex"></span>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda