Rolagem automática

Olá,

Estamos usando esta versão do Discourse

E estou em um tópico com 9.800 posts. Estou lendo o penúltimo mais recente e, toda vez que alguém responde, o fórum pula para o último post, pulando vários posts novos.

Isso também acontece se eu deixar o navegador aberto e for almoçar ou algo assim. Quando volto, o tópico está no último post e preciso rolar para cima para ler as últimas 1 a 100 respostas que perdi.

Estou falhando em entender como isso é útil. É definitivamente um comportamento novo. Existe uma maneira de desativar isso? Se não, você pode adicionar um botão de desativação de “rolagem automática” ou “rolagem ao vivo” nas configurações? É quase que induz raiva, e eu gosto de guardar minha raiva para coisas úteis.

3 curtidas

Isso não deveria estar acontecendo, pois você observa que isso torna a leitura muito frustrante. Não consigo reproduzir o problema em um ambiente de teste — é possível que um tema personalizado possa estar causando um problema? Você experimenta o mesmo problema no modo de segurança?

5 curtidas

Eu já vi isso acontecer.

3 curtidas

Ele é um dos poucos usuários que realmente não usa um tema extensivamente modificado. Isso acontece comigo também, mas meu tema é inteiramente feito de ajustes de CSS feitos por mim.

2 curtidas

O CSS não pode ser completamente descartado; vimos casos em que ajustes de CSS impactaram o rastreamento de leitura ou o posicionamento de rolagem. Por exemplo, algo tão simples quanto isto pode quebrar certos comportamentos de rolagem:

html,
body {
  height: 100%;
  min-height: 100vh;
}

Eu definitivamente recomendo testar o site em modo de segurança (que qualquer um pode usar temporariamente) — se o problema ainda ocorrer em modo de segurança, então é quase certamente um problema com o Discourse, e não com uma personalização.

5 curtidas

Posso confirmar que o modo de segurança ainda rola automaticamente. Sei que você não conseguiu replicar isso em um ambiente de teste, mas o ambiente de teste inclui a barra inferior? Suspeito que, se a barra inferior estiver visível na tela, a thread rolará automaticamente após alguns testes.

Talvez seja uma pista falsa, mas se isso não estiver visível na página, não parece ocorrer. Se eu rolar para que isso fique totalmente fora de vista, mas ainda consigo ver a última postagem, isso não ocorre. Se estiver visível, mesmo que parcialmente, ele rolará automaticamente.

3 curtidas

Apenas como uma verificação de sanidade, eu tentei:

// remove bottom bar
.topic-map.--bottom {
    grid-area: posts;
    grid-row: 0;
    max-width: calc(var(--topic-avatar-width) + var(--topic-body-width) + var(--topic-body-width-padding)*2);
}

Isso efetivamente torna o mapa do tópico inferior não visível e o problema desaparece para mim.

3 curtidas

Descobriu-se que isso apenas move a barra para cima no tópico em um local estranho, então apliquei isso ao CSS do tema:

.topic-map.--bottom {
    display: none !important;
    height: 0px;
}

Não sou um cara da web, então perdoe minha ignorância.

Além disso, o problema ainda ocorre se eu rolar até o final do tópico, portanto, não é apenas este elemento específico que o causa.

3 curtidas

Você sabe se o problema está ocorrendo em apenas um tópico específico? Percebo que pode ser difícil confirmar isso se não houver outros tópicos ativos no site que tenham um número semelhante de posts.

Se possível, você pode visitar o tópico com o inspetor web do seu navegador aberto na aba “console”? Veja se rolar pelo tópico causa algum erro a ser exibido no console.
O console se parecerá com a imagem abaixo. Na maioria dos navegadores, você pode abrir o inspetor web pressionando a tecla F12 no seu teclado, ou clicando com o botão direito do mouse e selecionando “Inspecionar” no menu. Após abrir o Inspetor, selecione a aba “Console” na lista de abas que fica na parte superior da página.

1 curtida

isto é com modo de segurança, se ajudar

3 curtidas

Consigo reproduzir sem erros no console:

6 curtidas

São todos os tópicos, independentemente do tamanho. Somos um grupo falante :slight_smile:

4 curtidas