O carregamento lazy significa esperar para renderizar o conteúdo em uma página web até que o usuário ou o navegador precise. O carregamento lazy pode ajudar a acelerar os tempos de carregamento da página web.
Após ler este artigo, você será capaz de:
Conteúdo relacionado
Por que minificar o Javascript?
O que é um otimizador de imagens?
Como facilitar o uso de um site em dispositivos móveis
O que é JAMstack?
Acelerar um site
Assine o theNET, uma recapitulação mensal feita pela Cloudflare dos insights mais populares da internet.
Copiar o link do artigo
O carregamento lazy é uma técnica para aguardar o carregamento de certas partes de uma página web — especialmente imagens — até que sejam necessárias. Em vez de carregar tudo de uma vez, conhecido como carregamento "eager", o navegador não solicita determinados recursos até que o usuário interaja de tal forma que os recursos sejam necessários. Quando implementado corretamente, o carregamento lento pode acelerar o tempo de carregamento da página.
Esse tipo de carregamento é chamado de "lazy" porque incentiva um navegador web a procrastinar. Ao exibir uma página de carregamento lazy, um navegador basicamente diz: "Vou esperar para carregar essas imagens até que eu realmente precise". Ao exibir uma página de carregamento eager, um navegador toma a atitude oposta: "Vou cuidar de tudo imediatamente!" Enquanto a procrastinação às vezes carrega conotações negativas no mundo real, neste caso é muitas vezes mais eficiente.
Por exemplo, uma postagem de blog pode ter uma imagem na parte superior da página e um diagrama na parte inferior. Alguém lendo a postagem do blog pode não chegar ao final do texto por vários minutos, então o navegador espera para carregar o diagrama até que o leitor role para essa seção. Dessa forma, a página carrega mais rapidamente no início, porque o navegador está carregando uma imagem em vez de duas.
A navegação do usuário normalmente é o que aciona o carregamento lazy de imagens. Em particular, quando um usuário rola para baixo em uma página, isso informa ao navegador para carregar as imagens que aparecem lá.
Quando uma página web é carregada, a parte que o usuário vê é chamada de "acima da dobra", enquanto a parte que o usuário ainda não vê é chamada de "abaixo da dobra".* As imagens que estão acima da dobra precisam ser carregadas imediatamente, ou então a experiência do usuário será afetada. Mas o usuário não vê as imagens abaixo da dobra até rolar para baixo. Assim, as imagens abaixo da dobra podem usar carregamento lazy.
*O que significa "dobra"? "Acima da dobra" e "abaixo da dobra" originou-se dos layouts de jornais. Os jornais normalmente vêm dobrados na metade horizontal, e a metade da frente — a área acima da dobra — é o que o leitor vê primeiro. Quando o termo é aplicado a um layout da web, a "dobra" é a parte inferior da tela do usuário.
Uma maneira de implementar o carregamento lazy é usar o carregamento de atributo HTML em uma tag de imagem. Adicionar loading="lazy"
, como no exemplo abaixo, informa ao navegador para aguardar o carregamento da imagem até que o usuário role para perto dela:
<img src="example.com/image" alt="example image" width="100" height="100" loading="lazy">
Os desenvolvedores web também podem usar estruturas de programação para implementar carregamento lazy mais sofisticado. O Angular é comumente usado para esta finalidade. A biblioteca JavaScript React também suporta carregamento lazy.
O Mirage da Cloudflare é outra maneira de implementar o carregamento lazy. Além de redimensionar automaticamente as imagens, o Mirage atua como um carregador lazy, apenas carregando imagens sob demanda. O recurso Mirage da Cloudflare está disponível para clientes Cloudflare nos planos de autoatendimento Pro e Business, bem como para clientes Enterprise.
media
adicionada para informar ao navegador quando carregá-los(saiba mais).carregamento
de HTML descrito acima para imagens.Carregamento de página mais rápido: tudo o mais sendo igual, páginas web com tamanhos de arquivo menores carregam mais rapidamente. Com o carregamento lazy, uma página web começa menor que seu tamanho total e, portanto, carrega mais rapidamente. A performance rápida na web tem vários benefícios, incluindo melhor SEO, taxas de conversão mais altas e uma experiência do usuário aprimorada.
Sem conteúdo desnecessário: suponha que uma página carregue várias imagens abaixo da dobra, mas o usuário saia da página antes de rolar para baixo. Nesse caso, a largura de banda usada para fornecer as imagens e o tempo gasto pelo navegador solicitando e renderizando as imagens foram essencialmente desperdiçados. Por outro lado, o carregamento lazy garante que essas imagens sejam carregadas apenas quando necessário. Isso economiza tempo e poder de processamento e pode economizar dinheiro para o proprietário do site porque usa menos largura de banda.
Os usuários podem solicitar recursos mais rapidamente do que o esperado: por exemplo, se um usuário rolar rapidamente para baixo em uma página, ele pode ter que esperar o carregamento das imagens. Isso pode afetar negativamente a experiência do usuário.
Comunicação adicional com o servidor: em vez de solicitar todo o conteúdo da página de uma só vez, o navegador pode ter que enviar várias solicitações aos servidores do site para obter conteúdo à medida que o usuário interage com a página. O uso de uma rede de distribuição de conteúdo (CDN) minimiza essa potencial desvantagem, porque as imagens são armazenadas em cache pela CDN e o navegador não precisa enviar uma solicitação até o servidor de origem para buscá-las.
Código adicional para o navegador processar: se um desenvolvedor adicionar várias linhas de JavaScript a uma página web para informar ao navegador como fazer o carregamento lazy dos recursos da página, isso aumentará a quantidade de código que o navegador precisa carregar e processar. Se feito de forma ineficiente, esse pequeno tempo adicional de carregamento e processamento pode superar o tempo economizado pelo carregamento lazy.
O carregamento eager é carregar todos os recursos da página web ao mesmo tempo ou o mais rápido possível. Alguns aplicativos que usam carregamento eager podem exibir uma tela "Carregando". Aplicativos web complexos e com muitos códigos, como jogos on-line, podem preferir usar o carregamento eager.
Vários fatores afetam a performance na web, mas essas três etapas são um bom ponto de partida para tornar um site mais rápido:
Veja mais maneiras de melhorar a performance da página web: Dicas para melhorar a velocidade do site