Обновить
15

Разработчик

4
Подписчики
Отправить сообщение
Есть ещё такой проект — litehtml. Может тоже что-то из него будет полезным.
Отозвать научную статью из двух журналов под надуманным предлогом того, что она типа сексистская.
Да кстати вот про это, если кто не читал.
Миранда была
Она не была, а есть, только называется теперь Miranda NG, не спешно но развивается.
Для статистики:
"type": "chromeos" // 8
"type": "win" // 26
"type": "linux" // 34
"type": "macosx" // 44
"type": "android" // 89

Ай, поторопился, в статье это уже указано.
Или нажать ПКМ на ней, что быстрее.
Да, я его видел даже раньше, но тогда он не был толком нужен.
Если так дальше пойдёт в нём может появиться потребность.
Думаю альтернативные децентрализованные поисковики дело времени.
Про некоторые «особенности» graphql и как с ним быть (в т.ч. где он полезен) есть
неплохое видео


Я для себя тоже решил что GraphQL что-то не то и решил пока своё простое query-api сделать.
Для этой ситуации можно держать только TextNode на нужных позициях в DOM. Думаю не должно тормозить даже для десятков мегабайт текста (но это не точно). Один мегабайт точно не тормозит.
Да, можно попытаться выкрутиться таким компромиссом.

а не решают проблему на корню.
Ну прямо на корню это в обозревателях должны решать — они сами должны выкидывать невидимое и отбрасывать все неиспользуемые стили при первой загрузке, оптимизируя их так чтобы не вычислять сложные правила каждый раз при перерисовке. В свежей лисе похоже так и работает (либо просто очень быстро работает), а вот в хроме нет.

Ещё минус динамической области видимости в невозможности пользователю сохранить страницу целиком. Нужно костылять спец. кнопку по которой всё дерево сгенерируется для удобства сохранения (кто об этом позаботится? только энтузиасты).
В движке в том числе. В хороших движках многие подсистемы выносятся в отдельные потоки, и игровую логику при желании можно раскинуть по ядрам (ясное дело что не всё параллелится, но хватает задач где можно раскидать нагрузку).
Они наверное в лисе сидят (в ней не тормозит ни прокрутка ни поле ввода) и посмотреть в хроме (подвержены все на blink) им судя по всему лень (не в их компетенции).
Да стандартная ситуация когда некомпетентные люди отфутболивают.
P.S. Вы так или иначе придёте к удалению лишнего из DOM, поэтому мне непонятно ваше категорическое «Нет», с отмеркой сколько нужно вешать в граммах.
И сколько предлагаете держать в «буфере» комментариев? всего сотню? (на сотне наверное не тормозит?) А знаете что при динамической видимой области перестаёт полноценно работать поиск по CTRL+F? То есть тут уже встают две задачи сделать динамическую область видимости (задача сама по себе не простая) и ещё эмуляцию поиска (который будет искать и в невидимых комментариях). А технический долг в виде перегруженной каскадной таблице стилей никуда не исчезнет.
Так-то я за динамическую область видимости, но только когда в ней есть потребность.
Решение проблемы в данном случае заключается в удалении из DOM лишних комментариев, невидимых на странице
Нет, решение для поле ввода заключается в чистке неиспользуемых стилей и возможно рефакторинга переусложнённых селекторов (их хватает неоптимальных), а прокрутка и вовсе чинится так.
Динамический viewport нужен только когда у вас реально много данных на странице (начиная с десятка тысяч, или даже больше), а тут на момент написания этого комментария всего 1369 комментариев.
Можно еще при прокрутке всей странице задавать mouse-events:none;
Да, это тоже можно, но в данном случае не обязательно, достаточно обойтись стилями выше и тормоза при прокрутке сразу уходят.

А вот тормоза с полем ввода без рефакторинга не избежать, ибо проблема даже не в количестве тормозных селекторов (а их реально много), а в самом по себе огромном количестве селекторов (даже те селекторы которые не используются на странице всё равно добавляют тормозов).

Кстати я отписал таки в тп хабра, цитирую ответ: «Вы можете привести пример ресурса на котором статьи с 1300 комментариев загружаются на ваш компьютер без задержек?»

Я конечно могу быть не прав, извините, но меня чуть не вывернуло от такого ответа от тп именно хабра.
«Круто», что тут ещё сказать.
deniskin, это норм?
Главные источники тормозов при прокрутке элементы с position: fixed
По большей части чтобы устранить тормоза прокрутки наберите в консоле (через F12):
$("#xpanel").css("transform", "translateZ(0)");
$(".layout__elevator").css("transform", "translateZ(0)");
// можно ещё:
$(".js-ad_sticky_comments").css("transform", "translateZ(0)");

C полем ввода сложнее, я пока не понял какие стили гробят.
Почему комментарии так безбожно тормозят? Неужели отрендерить 1000 комментов это такая сложная задача? Почему когда я их прокручиваю (хром, винда), оно тормозит так будто биткоины майнит и почему когда я прокручиваю огромный RFC всё летает?
Я ответил тут почему.
Вкратце: на хабре очень много не оптимальных стилей.
И что? Большая часть тормозов из-за того что DOM используют как хранилище данных. При не умелом использовании DOM многопоточность вас не спасёт.

Заголовок спойлера
Ol.wmv; 02.wmv; 03.wmv; 04.wmv; 5 на 5.avi; 05.wmv; 06.wmv; 07.wmv; 08.wmv; 09.wmv; 10.wmv; 11 .avi; 12.wmv; 13.wmv; 14.wmv; 15.wmv; 16.wmv; 17.wmv; 18.wmv; 19.wmv; 20.wmv; 21.wmv; 22.wmv; 23.avi; 24.wmv; 25.avi; 26.wmv; 27.wmv; 28.wmv; 29.wmv; 30.wmv; 31.wmv;
Ни одного такого файла нет, но внезапно есть 32.wmv в папке Pornography, я в зоне риска?
Хотите секрет? Это всё CSS (СТИЛИ) виноваты. Грохните их dr.habracdn.net/habrcom/styles/1537449801/main.bundle.css и всё станет в сто раз шустрее. Можно через F12 во вкладке Source открыть и потереть содержимое этого файла или перейти через Elements на него в стилях элемента какого-нибудь.
Это не новая проблема. Частенько всякие там кривые нормализаторы (сброс стилей) сильно так тормозов добавляют (но в данном случае проблема глубже). Уже не в первый раз вижу такое на сайтах.

Информация

В рейтинге
5 102-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность