Barras de progresso de rolagem, e por que a sua deveria ser um cachorro
Toda página longa faz a mesma pergunta: quanto falta disso? Um indicador de progresso responde, e a maioria responde de um jeito que você para de notar no segundo parágrafo.
Para que serve a barra
A barra de rolagem já diz onde você está, em princípio. Na prática ela tem alguns pixels de largura, se esconde até você mexer o mouse e, numa página que carrega imagens conforme você desce, o cursor dela muda de tamanho enquanto você lê. As extensões devolvem uma barra de progresso porque a resposta do próprio navegador foi silenciosamente tirada do projeto.
Então você recebe uma linha fina e colorida no topo da página, que se preenche conforme você rola. Funciona. E também é a coisa mais fácil da página de parar de ver: é uma linha reta, fica na faixa que o seu olho aprendeu a ignorar, e nunca faz nada além de ficar mais comprida.
Posição, mas também velocidade
Uma barra carrega exatamente um número — o quanto você desceu. Existe um segundo número disponível de graça, e nenhuma barra mostra: a velocidade com que você está se movendo.
O scrolldog carrega os dois. A posição do bichinho pela borda da janela é a profundidade da rolagem. No topo da página ele está à esquerda; no fim, já chegou do outro lado. O passo dele é a velocidade da rolagem: um tapa na rodinha e ele dispara; você desce um parágrafo por vez e ele trota.
Pare, e ele senta. Essa é a parte que uma barra não consegue fazer. Uma barra estática fica idêntica se você está lendo com atenção ou se deixou a aba aberta três horas atrás. Um bichinho que sentou está te dizendo que a página ficou quieta, e ler isso não te custa nada, porque você não estava lendo — você pegou de canto de olho, que é a única atenção que um indicador de progresso já mereceu.
Quanto custa
A objeção de sempre a uma extensão decorativa é que ela piora o navegador. Esta escuta a rolagem de forma passiva, junta cada rajada de eventos em uma escrita por quadro de animação e move um único elemento dentro de uma trilha fixa de tamanho zero. Ela nunca lê nem muda o layout da sua página, e não faz requisição de rede nenhuma da página que você está lendo.
Um botão na janelinha o desliga em todo lugar, em todas as abas abertas, de uma vez.
Ver como funciona