Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

420
Visualizações
Necesita un retraso dentro de un bucle for, Python, Flask, HTML, JavaScript

Hola y disculpas si esto se ha preguntado y respondido, pero después de un par de horas cada día durante la semana pasada buscando, todavía tengo que encontrar una buena solución.

Problema: Tengo un sitio servido con Python/Flask donde tengo un botón específico que me permitirá abrir cada instancia de los sitios de mis clientes, cargada desde una base de datos ( custdata ). El siguiente código en su forma original funciona bien para abrir todas las páginas en nuevas pestañas. El problema que tengo es ayudar a reducir la carga inicial al solicitar las páginas, me gustaría tener un retraso de medio segundo entre cada iteración dentro del ciclo for.

Notas: como se ve a continuación, intenté usar la opción setTimeout con un retraso de 500 milisegundos, pero esto parece solo retrasar la apertura de la primera iteración de las páginas siguientes. El bucle luego abre el resto de las páginas sin demora.

Por ejemplo: si la base de datos tiene 5 clientes para un servidor determinado, la página se cargará, demorará 500 ms y luego cargará las 5 páginas de clientes sin demora entre ellas. El efecto deseado es retrasar la apertura de las páginas de clientes entre cada página de cliente.

 <head> <script> function myFunction() { {% for mydata in custdata %} window.setTimeout(function(){ window.open("https://customer.mysite.com/launch/{{ custdata.customer_name }}", "_blank"); }, 500); {% endfor %} } </script> </head> <body onload="myFunction()"> Customer pages should have loaded. If so, you can close this page. If not, ensure popups are not blocked for this site. </body> </html>```
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Gracias Pablo M por la sugerencia. a continuación se muestra el código actualizado para aumentar el tiempo de espera en 250 ms por iteración dentro del ciclo for. Esto parece haber logrado el objetivo final que estaba buscando:

 <script> function myFunction() { let delayiteration=0; {% for mydata in custdata %} window.setTimeout(function(){ window.open("https://customer.mysite.com/launch/{{ custdata.customer_name }}", "_blank"); }, delayiteration); delayiteration=delayiteration+250; {% endfor %} } </script> </head> <body onload="myFunction()"> Customer pages should have loaded. If so, you can close this page. If not, ensure popups are not blocked for this site. </body> </html>
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda