Como ocultar a barra de navegação superior do Facebook ao rolar para baixo?

No Facebook, ao rolar para baixo, a barra azul superior ainda está lá. Existe uma maneira de ocultá-lo ao rolar para baixo, assim como funciona o Stack Exchange? Dessa forma, não me distrairei com a notificação em vermelho durante a leitura, mas ainda poderei acessá-la convenientemente quando precisar.

Estou ciente do F.B. Plugin Pureza, mas mesmo depois de desmarcar a opção Congelar Barra de Navegação Superior, ele ainda está lá. Perguntei ao autor, ele disse que “é por causa do padrão do Facebook. Ele não planeja atualizar esta função.

Eu uso o Firefox. insira a descrição da imagem aqui

Resposta

Normalmente com algo assim, você pode alterar a barra de navegação de position: fixed para outro valor de posição, mas o Facebook faz seu site de forma diferente. Em vez de rolar a página inteira e manter a navegação fixa, eles rolam todo o conteúdo. Na verdade, é meio intrigante como eles fazem isso. Deve estar usando JavaScript em algum lugar.

Portanto, você deve usar um gerenciador de scripts de usuário como Tampermonkey para fazer algo como o seguinte. Ele oculta visualmente elementos no Facebook (por padrão, exceto a linha do tempo) quando a página é rolada. Você pode alterar o que está sendo escondido ou não na rolagem alterando a lista hideElementList. Se você quiser que apenas a barra de navegação desapareça, remova a segunda e a terceira entradas (incluindo a vírgula antes delas).

// ==UserScript== // @name Facebook nav hider // @namespace https://zachsaucier.com/ // @version 0.1 // @description Hides Facebook"s navigation bar when the page is scrolled // @author Zach Saucier // @match https://www.facebook.com/ // @grant none // ==/UserScript== (function() { "use strict"; var hideElementList = [ document.getElementById("pagelet_bluebar"), document.getElementById("leftCol"), document.getElementById("rightCol") ]; function checkScroll(timestamp) { console.log(window.pageYOffset); if(window.pageYOffset !== 0) { for(var i = 0; i < hideElementList.length; i++) { hideElementList[i].style.opacity = "0"; } } else { for(var i = 0; i < hideElementList.length; i++) { hideElementList[i].style.opacity = "1"; } } window.requestAnimationFrame(checkScroll); } window.requestAnimationFrame(checkScroll); })(); 

Eu também carregou este script para GreasyFork para fácil instalação se você tiver algo como Tampermonkey instalado.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *