Pular para o conteúdo

Como fazer um vídeo de um site: rolando a página automaticamente

Três jeitos de fazer uma página rolar sozinha enquanto você grava: a rolagem automática do navegador, um script de console para copiar e um renderizador. E também a velocidade certa e qual curva usar.

Aviral LakhanpaulAtualizado em 3 min de leitura

A resposta curta

Não role com a mão. Cole no console do navegador um script curto que rola a página numa curva de suavização durante um tempo fixo enquanto o gravador roda, ou entregue a URL a um renderizador que calcula a rolagem e monta o vídeo sem gravador. Como ritmo inicial, conte uns dois segundos para cada altura de tela da página.

Três jeitos de rolar automaticamente

Jeitos de rolar uma página automaticamente para um vídeo
MétodoControle da velocidadeSuavizaçãoPrecisa de gravador
Rolagem automática do navegador (clique do meio)À mão, com o ponteiroNenhumaSim
Um script de consoleExato, em segundosQualquer curva que você escreverSim
Um renderizador de URL para vídeoExato, em segundosEscolhida entre predefiniçõesNão

A rolagem automática do navegador, o modo que um clique do meio ativa no Windows e no Linux, é a mais fácil de usar e a menos útil: a velocidade depende da distância entre o ponteiro e o ponto onde você clicou, então ela oscila, e o ponteiro precisa ficar na tela para guiá-la. Serve para uma captura rápida, não para uma que você vai publicar.

Um script que rola a página por você

Abra a página, abra o DevTools (F12, ou ⌥ ⌘ I no Mac), cole isto no Console e aperte Enter. O script espera três segundos para você iniciar o gravador e depois rola de cima a baixo numa curva ease-in-out, no tempo que você definir.

Script de console: rolar a página inteira com suavidade
const SECONDS = 20;        // quanto tempo a rolagem leva
const WAIT = 3;            // tempo para iniciar o gravador

document.documentElement.style.scrollBehavior = 'auto';
window.scrollTo(0, 0);

const end = document.documentElement.scrollHeight - innerHeight;
const ease = (t) => (t < 0.5 ? 4 * t ** 3 : 1 - (-2 * t + 2) ** 3 / 2);

setTimeout(() => {
  const start = performance.now();
  const step = (now) => {
    const t = Math.min(1, (now - start) / (SECONDS * 1000));
    window.scrollTo(0, end * ease(t));
    if (t < 1) requestAnimationFrame(step);
  };
  requestAnimationFrame(step);
}, WAIT * 1000);
  • scrollBehavior = 'auto' faz diferença. Muitos sites definem scroll-behavior: smooth, que transforma cada pequeno movimento do script numa animação própria e traz os trancos de volta.
  • requestAnimationFrame move a página uma vez por quadro exibido, então a rolagem fica tão uniforme quanto a tela permite.
  • Antes de rodar, role até o fim e volte uma vez à mão, para as imagens com carregamento lento já estarem no lugar e a altura da página não mudar no meio da tomada.
  • Sites feitos com uma biblioteca de rolagem suave, como Lenis ou Locomotive Scroll, cuidam da rolagem por conta própria e podem brigar com o script. Se a página der solavancos, o motivo é esse.

Ou dispense o gravador de vez

Com um script, a taxa de quadros ainda fica por conta do gravador e da sua máquina. Um renderizador tira os dois da equação: o Website Scroll Video lê a página inteira uma vez e calcula onde ela deve estar em cada quadro de um vídeo a 24, 30 ou 60 fps fixos, então uma página pesada não perde quadros e uma longa não sai do compasso. Você define as mesmas coisas que no script, em segundos e por curva, e vê a prévia do resultado antes de gastar qualquer coisa.

Em que velocidade rolar?

Meça a página em telas: a altura total dividida pela altura da janela. Uma landing page típica tem de cinco a oito telas. Depois:

Ritmo da rolagem por objetivo
ObjetivoSegundos por telaUma página de oito telas
Teaser ou corte para redes sociaisCerca de 18 segundos
Portfólio ou vitrineCerca de 216 segundos
Tour para ler com calma3 ou mais, ou pausas24 segundos ou mais

Mais rápido que uma tela por segundo, o texto vira um borrão, principalmente a 30 fps ou num GIF. Mais devagar que três segundos por tela, o público se dispersa. Quando uma seção importa mais que as outras, uma pausa nela funciona melhor do que desacelerar a página inteira; o Website Scroll Video permite até 6, de 0,5 a 5 segundos cada.

Qual curva de suavização usar

  • Suave (ease-in-out). Sai do repouso, mantém o ritmo e volta ao repouso. O padrão certo: as duas pontas parecem intencionais, não cortadas.
  • Deslizante (ease-out). Sai rápido e vai parando aos poucos, como um toque rápido no trackpad. Boa para teasers curtos que devem abrir com energia.
  • Linear. Uma velocidade só do começo ao fim. A melhor para um loop de fundo, em que qualquer mudança de ritmo chama a atenção.
  • Pulso. Avança uma seção, assenta, avança de novo. Parece alguém folheando o site, o que combina com tours de produto.

Fazendo o loop

Um vídeo que rola para baixo e depois corta de volta para o topo dá um salto visível quando recomeça. Em vez disso, role para baixo e de volta para cima pela mesma curva: o último quadro coincide com o primeiro e o loop fica contínuo. No Website Scroll Video, isso é a Reprodução Descer e voltar, com uma espera opcional no fim antes da volta e no topo antes de o loop recomeçar.

Teste no seu próprio site

Cole um link e veja a prévia da rolagem de graça. 51 créditos grátis ao criar a conta, sem cartão e sem marca d’água em nada que você exportar.

Buscas recentes

    Perguntas e respostas

    A versão curta do que as pessoas perguntam em seguida.

    Contato
    Como faço uma página da web rolar automaticamente?

    Clique com o botão do meio e mova o ponteiro para usar a rolagem automática do próprio navegador, ou cole no console do DevTools um script curto que chama window.scrollTo uma vez por quadro numa curva de suavização. Para um vídeo, o script é muito mais uniforme.

    O Chrome tem alguma configuração de rolagem automática?

    O Chrome no Windows e no Linux tem rolagem automática com o clique do meio, mas a velocidade segue o ponteiro. Não existe uma rolagem cronometrada nativa. Extensões adicionam uma; a alternativa é um script de console ou um renderizador de URL.

    Como faço um vídeo de rolagem de site repetir em loop sem emenda?

    Role para baixo e de volta para cima pela mesma curva, para o último quadro coincidir com o primeiro, em vez de cortar do fim da página para o topo.

    Logotipo do Website Scroll Video, um botão de reprodução sobre uma página web em uma janela do navegador.

    Menos tempo gravando. Mais tempo criando.

    Automatize gravações de sites com movimento personalizável, controles inteligentes e opções de exportação pensadas para criadores de hoje.