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

277
Visualizações
¿Cómo puedo comprobar si se ha cargado una imagen de fondo?

Quiero establecer una imagen de fondo en la etiqueta del cuerpo, luego ejecutar un código, como este:

 $('body').css('background-image','http://picture.de/image.png').load(function() { alert('Background image done loading'); // This doesn't work });

¿Cómo puedo asegurarme de que la imagen de fondo esté completamente cargada?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

prueba esto:

 $('<img/>').attr('src', 'http://picture.de/image.png').on('load', function() { $(this).remove(); // prevent memory leaks as @benweet suggested $('body').css('background-image', 'url(http://picture.de/image.png)'); });

esto creará una nueva imagen en la memoria y usará el evento de carga para detectar cuándo se carga el src.

EDITAR: en Vanilla JavaScript puede verse así:

 var src = 'http://picture.de/image.png'; var image = new Image(); image.addEventListener('load', function() { body.style.backgroundImage = 'url(' + src + ')'; }); image.src = src;

se puede resumir en una función práctica que devuelve una promesa:

 function load(src) { return new Promise((resolve, reject) => { const image = new Image(); image.addEventListener('load', resolve); image.addEventListener('error', reject); image.src = src; }); } const image = 'http://placekitten.com/200/300'; load(image).then(() => { body.style.backgroundImage = `url(${image})`; });
over 4 years ago · Santiago Trujillo Relatório

0

Tengo un complemento de jQuery llamado waitForImages que puede detectar cuándo se han descargado las imágenes de fondo.

 $('body') .css('background-image','url(http://picture.de/image.png)') .waitForImages(function() { alert('Background image done loading'); // This *does* work }, $.noop, true);
over 4 years ago · Santiago Trujillo Relatório

0

No hay devoluciones de llamada JS para activos CSS.

over 4 years ago · Santiago Trujillo 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