Чи можна відключити нескінченну прокрутку для всіх сайтів?


21

Я ненавиджу сайти з нескінченною прокруткою, в основному тому, що вони використовують всю мою оперативну пам'ять. Чи є спосіб переконати веб-сайти не завантажувати цей шлях? Можливо, розширення для браузера, яке перетворює його на окремі сторінки? Спосіб змусити браузер повідомити, що він не підтримує його? Щось я міг би видалити?


6
Ви можете відключити JavaScript. Але все інше було б неможливим без того, щоб веб-сайт підтримував пейджинги.
slhck

adblock конкретний javascript, який викликає нескінченну прокрутку?
ендоліт

@endolith: Існують різні рішення для різних веб-сайтів, оскільки кожен реалізує нескінченну прокрутку по-різному. Вкажіть, будь ласка, які основні веб-сайти, які викликають у вас проблеми.
harrymc

@harrymc Я хочу заблокувати їх усі. Наприклад, список фільтрів adblock, який блокує якомога більше можливостей.
ендоліт

@endolith: Вам потрібно буде кілька правил adblock для кількох сайтів. Крім того, те, що ви дійсно хочете, це перетворити прокрутку у звичайні кнопки Далі / Попередня. Це доступно для деяких веб-сайтів, наприклад Wordpress.
harrymc

Відповіді:


4

Є кілька переконливих причин, чому відповідь - «ні».

Деякі сайти динамічно додають вміст (наприклад, facebook) у момент прокручування вниз, тому, мабуть, це випадки, коли ви не перебуваєте.

Інші сайти додають вміст, динамічно незалежний від взаємодії з користувачем (наприклад, прокрутка). В принципі, з ними можна якось поводитися, запобігаючи / затухаючи відповідальні веб-з'єднання, коли сторінка заповнена. Однак, спроба відновити це прозоро у випадку, якщо ви вирішите перейти на "наступну сторінку", ймовірно, приречена, оскільки можна очікувати, що процеси відмовляться через тайм-аути.

Потім знову з’являються сторінки, які просто виводять багато вмісту сторінки, можливо, навіть статичний вміст. Клієнт може просто перервати з'єднання, як тільки буде достатньо, щоб надати скриншот даних, але це означає, що, щоб потрапити на "наступну сторінку", вам доведеться почати завантажувати сторінку заново. На багатьох сторінках ця вата спричиняє багато витраченої пропускної здатності для марних перезавантажень; також це може бути небажаним у разі побічних ефектів (наприклад, онлайн-замовлення). Крім того, клієнт може перешкодити TCP-з'єднання, поки ви не перейдете на "наступну сторінку". Я боюся, що веб-сервери там не будуть задоволені (і перестануть з’єднуватись) з таким рішенням, оскільки воно марнує їхресурси. Крім того, якщо ви хочете мати можливість гортати попередні сторінки, у вас все ще виникає проблема необхідності зберігати повний вміст в оперативній пам’яті або кеші.

Ще одна альтернатива - завантажити сторінку повністю та просто відобразити її на сторінці. Але це рівнозначно тому, що у вас зараз: прокрутіть довгу сторінку. Ви можете лише сподіватися, що більша частина сліду пам’яті знаходиться на диску замість оперативної пам’яті, тому, можливо, ця опція не надто надумана.

Все це не враховує, що загальний макет може зажадати більшого або меншого вмісту корисної сторінки, щоб вирішити, як повинні виглядати "сторінки" або де ламати сторінки.

Єдиний дійсно здійсненний спосіб, який я бачу, - це використовувати механізми, які дозволяють відкрити поетапний непридатний вміст media:print, який не працює на сторінках : використовувати стайлінг, який би по суті становив завантаження сторінки та попередній перегляд друку. Можливо, ви вже помічали, що багато сторінок жахливо відображаються у форматі друку чи попереднього перегляду друку, хоча веб-розробники доступні чимало варіантів стилізації для конкретної адреси підкачки, тому уявіть, що ви отримаєте. Однак, якщо хтось використовуватиме це як (наприклад, Firefox) доповнення, робочим процесом буде те, що сторінка завантажується і потім буде представлена ​​як у попередньому попередньому перегляді. Не заглиблюючись у надр браузера, це все одно призведе до того, що повна сторінка зберігатиметься в оперативній пам’яті, а не те, що ви хочете.


4

Під час використання Firefox можна використовувати надбудову Kill Infinite Scroll , наразі у версії 0.79.4.

Цей додаток описано як:

Це вимикає нескінченну прокрутку, яку використовують Tumblr та інші сайти. Зокрема, це калічить сценарії з http://www.infinite-scroll.com (версії 1.4 та 2.0). На відміну від додатка Anti Tumblr Infinite Scroll, він просто відновлює оригінальні кнопки Next і Prev.

Я вважаю, що відновлення кнопок Next і Prev бажано просто знищити прокрутку, оскільки все ще можна прокручувати, але використання пам'яті залишатиметься майже постійним.

В іншому випадку, щоб знищити прокрутку, я пропоную, що замість використання Adblock, вам може бути краще використовувати розширення типу NoScript, щоб заборонити всі JavaScript на всіх веб-сайтах, крім тих, яким ви довіряєте (або принаймні заборонити сторонні JavaScript). Це насправді захисний механізм, який всі повинні використовувати проти вірусів, що рухаються за допомогою браузера. Щоразу, коли ви хочете тимчасово повторно увімкнути прокрутку, ви можете це зробити, тимчасово дозволивши скриптам (який залишається в силі, поки браузер не закриється).


У минулому я використовував носкрипт, і він порушує надто багато речей, щоб бути вартим. Хоча Yesscript - це гарна ідея. Я цим не користувався деякий час.
ендоліт

@endolith: NoScript працює для мене дуже добре після того, як я назавжди дозволив деякі сайти сценаріїв, які часто використовуються. Проблема з YesScript полягає в тому, що за замовчуванням він пропускає все, тому вірус буде встановлений ще до того, як ви це дізнаєтесь.
harrymc

1
З мого досвіду, носкрипт зламався на 90%, якщо все, що я відвідав, і я витратив більше часу на створення сценаріїв, ніж на перегляд сайтів. Це питання стосується нескінченного прокручування не вірусів
ендоліт

4

Ви можете використовувати AdBlock / uBlock для блокування коду, який завантажує наступну сторінку. Це сильно, але працює, наприклад:

! Forbes infinite scroll (and all other AJAX) https://www.reddit.com/r/web_design/comments/4i6bpd/never_ending_scroll_down_on_some_websites_is_it_a/d2w3qj2
||forbes.com$xmlhttprequest

Я також спробував це, але вони не спрацювали:

! Forbes infinite scroll https://adblockplus.org/forum/viewtopic.php?t=26583
||i.forbesimg.com/assets/img/loading_spinners/*
||forbesimg.com/scripts/combined/js/article-responsive*

! Bloomberg infinite scroll http://www.wilderssecurity.com/threads/ublock-origin-stopping-infinite-scrolling.379726/#post-2525404
bloomberg.com http://assets.bwbx.io/business/public/javascripts/application script block

Але хтось, хто добре працює з правилами фільтра Adblock (не я), може розробити блок-лист для блокування нескінченної прокрутки на багатьох сайтах.

Або використовуйте Add-Ons або Usercripts, щоб змінити цю поведінку і замінити її чимось більш зручним для користувачів.

Цей вид додатка вимикає його на Tumblr, наприклад: https://addons.mozilla.org/en-US/firefox/addon/anti-tumblr-infinite-scroll/ Він все одно автоматично завантажує нову сторінку, коли ви досягнете внизу, що дратує, але замінює поточну сторінку замість того, щоб додавати її, і демонструє доказ концепції того, що може існувати.

Я спробував запустити список тут, але я не знавець правил Adblock:

https://gist.github.com/endolith/72ac5e69e037be02b118adbedcdeac59/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.