Disabilitare unload-on-scroll?

C’è un modo per mantenere i post precedenti caricati nella pagina mentre si scorre verso il basso in un argomento? Questo interrompe l’utilità della funzione di ricerca integrata nel browser, che è meno ingombrante da usare rispetto alla ricerca negli argomenti di Discourse. In qualsiasi punto della pagina posso semplicemente premere Command-F, inserire del testo e cercare rapidamente le occorrenze nel testo così come viene visualizzato. La ricerca di Discourse richiede invece di scorrere fino in alto, cliccare sull’icona di ricerca, selezionare la casella “questo argomento” e poi cliccare sui risultati per vederne il contesto. Ogni volta che voglio provare un altro risultato, devo ripetere l’intera procedura.

Idealmente, verrebbe caricato l’intero thread, invece di costringermi a scorrere fino in fondo, ma capisco perché non lo faccia. Almeno posso scorrere rapidamente fino in fondo con la tastiera per caricare altro. Questo sarebbe accettabile, tranne per il fatto che i post precedenti vengono eliminati man mano che procedo, rendendoli impossibili da cercare.

Premi il tasto Fine sulla tua tastiera o fai clic/tocca la data in fondo alla cronologia. Puoi anche inserire un argomento in fondo facendo clic sull’ora dell’ultimo post o sul numero di post.

Esiste una rotta speciale per la stampa che puoi utilizzare per questo, come

https://meta.discourse.org/t/the-state-of-javascript-on-android-in-2015-is-poor/33889/print

(è necessario aprirla in una nuova scheda). Questo caricherà fino a 1000 post in una vista senza JavaScript.

5 Mi Piace

La rotta “print” è un buon punto di partenza, ma non è davvero ciò che stavo cercando.

Nelle versioni precedenti, potevo scorrere per caricare un intero argomento (o solo la sezione rilevante per una determinata sequenza), mantenerlo caricato e poi usare SingleFile per esportare un archivio dell’intero argomento, visualizzato esattamente così com’è, come una normale pagina del forum. Simile a uno screenshot, ma più piccolo, scorrevole, zoomabile, con link cliccabili, immagini salvabili e testo rappresentato come testo anziché come pixel. Potevo anche preparare la pagina in anticipo, facendo cose come espandere il widget “3 risposte”, o disvelare gli spoiler, o persino allegare note private nel widget delle risposte, da visualizzare come parte dell’archivio ma mai effettivamente pubblicate sul forum. Potevo anche usare il “zapper” di uBlock Origin per rimuovere i post non rilevanti per la parte dell’argomento che volevo salvare… riducendo la discussione alle sole esatte di cui avevo bisogno.

Poi, durante un aggiornamento di Discourse, questa possibilità è stata persa. Il massimo che riesco a ottenere è un po’ di post alla volta. Forse di più se zoomo indietro il più possibile, fin dove consente il browser, per far stare più post sullo schermo.

Sarebbe fantastico se ci fosse un modo per forzare l’app a smettere di scaricare i post. Tipo, una combinazione di tasti, un pulsante o un codice Konami, o… qualsiasi cosa. Basta premere qualcosa per disabilitare temporaneamente la funzione JavaScript responsabile del caricamento dei post fuori dallo schermo, solo per questa scheda del browser.

Per esempio, supponiamo che ci sia un argomento lungo 12.000 commenti su un group buy, che si estende per anni, e che nel mezzo della discussione le persone parlino di gatti per 100 post prima di tornare all’argomento originale. Potrei scorrere fino all’inizio del thread dei gatti, premere una combinazione di tasti “stop al caricamento dei post” in Discourse, scorrere verso il basso, usare lo zapper di uBlock per rimuovere i post che non riguardano i gatti, scorrere fino alla fine del thread dei gatti e poi premere la combinazione di tasti di SingleFile per salvare il DOM come file .html.

Sono riuscito a farlo fino a poco tempo fa, l’anno scorso; non sono sicuro di quando sia smesso di funzionare. Forse era solo un bug che permetteva di farlo, dato che sembra che il comportamento di scaricamento esistesse già da un decennio. Ma mi piaceva quel bug e mi piacerebbe poterlo riportare in vita a volte.

So che farebbe sì che la scheda utilizzasse molte più risorse. Non è un problema. Ci sono casi d’uso in cui “più contenuti caricati nel DOM” è più importante che minimizzare l’uso della RAM.