Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

230
Views
El método .css de jQuery funciona de manera diferente dentro y fuera del ciclo

Descargo de responsabilidad: no soy un ingeniero front-end, y nunca lo fui. Entonces, me disculpo si me estoy perdiendo algo muy obvio, pero no puedo entender lo que acabo de experimentar en JavaScript y jQuery.

En mi documento HTML, tengo algunos elementos div , un elemento de button y un <script> que contiene:

 $("button").click(function(){ $("div").fadeOut(); var colour = "rgb(" + Math.floor(Math.random()*255) + ", " + Math.floor(Math.random()*255) + ", " + Math.floor(Math.random()*255) + ")" $("div").css("background-color", colour); $("div").fadeIn(100); });

y esto funciona como se esperaba. Todos y cada uno de los nuevos clics en el <button> cambian el color de fondo de todos los elementos div , en el documento HTML adjunto, configurándolos en valores RGB generados aleatoriamente.

Sin embargo, si quiero jugar un poco y hacer un "espectáculo colorido", poniendo todo este fragmento en un bucle, como:

 $("button").click(function(){ for (var i = 0; i < 10; i++) { $("div").fadeOut(); var colour = "rgb(" + Math.floor(Math.random()*255) + ", " + Math.floor(Math.random()*255) + ", " + Math.floor(Math.random()*255) + ")" console.log(colour); $("div").css("background-color", colour); $("div").fadeIn(100); } });

todas las iteraciones se desvanecen y se desvanecen con el mismo color, aunque espero que sean aleatorias, e incluso console.log(colour) imprime diferentes valores (aleatorios).

Tenga en cuenta que entiendo que el azar puede ser pseudoaleatorio, dependiendo de la semilla predeterminada, pero esto no importa aquí ... mi problema es tener valores discretos, en la variable de colour , pero no hacer que funcionen, como se esperaba, en el método .css .

Entonces, ¿por qué esto (probablemente - .css ?) Funciona de manera diferente dentro y fuera del bucle?

Estoy usando Chrome de Google, si eso importa.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!