Pull to refresh
81
0

Программист-фрилансер

Send message

А почему бы и нет? Память не бесконечна да и новые знания надо закреплять на практике.

или подумать об использовании 2 протоколов, для текста и для потоковых данных?
сделать более интерактивным браузер, добавив ему такой вид ресурса, как канал месенжера и позволив посетителю параллельно взаимодействовать и с тем и с другим.

В браузере есть ещё два протокола:


  1. WebSocket — он позволяет открыть канал к серверу и передавать данные в обе стороны в реальном времени.
  2. WebRTC — для прямой связи между браузерами пользователей. Самый яркий пример использования сейчас WebRTC это различные видеочаты где в обе стороны одновременно передаются текст, видео и звук. Также на WebRTC был сделан WebTorrent.

Но все ли разработчики веб приложений знают о этих возможностях?

В Китае они могут его навязать. В более свободных странах и конкуренция выше и навязать сложнее.

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

А это кстати могут работать модные ныне Service workers ну и плагины.

А что если разделить салон и ходовую часть? Салон остаётся на парковке и может быть компактно сложен а ходовая часть уезжает к следующему клиенту.

Я не о об этом:


[mol_textarea_edit] {
    color: transparent;
}

Это походу никак не влияет рендеринг по крайней мере пока текст не выделен.


А об этом:


[mol_text_type="code-punctuation"] {
    opacity: .5;
}

[mol_theme="$mol_theme_light"], :root {
    --mol_theme_text: rgba( 0 , 0 , 0 , .9 );
}

Если тут убрать прозрачность то тогда текст при конвертации в XPS остаётся текстом.

Можно ещё чуть чуть ускорить:
image


Оффтоп: Пожалуйста не используйте прозрачность на тексте. Это заставляет браузер текст растрировать. Из за этого у меня большая часть текста терялась при конвертации. Ну и на производительность прозрачность влияет.

Есть XML к которому цепляется XSLT шаблон. Сам XML хранит данные а шаблон их оформляет в XHTML. Но никто не запрещает взять пользователю только XML и оформить своим шаблоном.

Отрезали то вроде не каждому персонально а всей стране за пределы границ. В таких условиях Tox по идее бы спокойно работал внутри страны.

В нашем примере мы видим улучшение с 232мс рендеринга до 30мс, это улучшение производительности в 7 раз.

Ок. На демке они уменьшили скорость рендеринга но при этом начало колбасить скролл. Причём понятно ешё когда при движении вниз так как там ещё не считались размеры элементов. Но при возрате наверх то почему? Браузер же уже должен был посчитать размеры и запомнить.

Автор решил проблему памяти держа в DOM только часть документа. Но при этом раздул количество объектов на единицу текста. От чего похоже у меня на планшете его вариант притормаживает больше чем десктопная версия на том же планшете.

Один classList на каждый элемент. И он уже есть даже если вы им не пользуетесь.

Например на cтранице у меня сейчас отображается только часть комментариев.


Имеем 40КБ текста и 200КБ тегов и атрибутов просто как текст. Элементов 762 и атрибутов 5197. Как то многовато для 19 комментариев отображаемых на странице.

Каждый атрибут это тоже node() который имеет свои параметры и занимает оперативку.


1: mol_html_view_text=""
baseURI: "https://nin-jin.github.io/habrcomment/#article=423889"
childNodes: NodeList []
firstChild: null
isConnected: false
lastChild: null
localName: "mol_html_view_text"
name: "mol_html_view_text"
namespaceURI: null
nextSibling: null
nodeName: "mol_html_view_text"
nodeType: 2
nodeValue: ""

А класс это уже просто значение атрибута class.

Вот что я вижу здесь в инспекторе:


<mol_dimmer id="$my_habrcomment.Root(0).Article().Text([object Text])" mol_html_view_text="" my_habrcomment_article_text="" mol_dimmer="" mol_paragraph="" mol_view="" style="min-height: 72px;">

Как это могло бы выглядеть.


<mol_dimmer id="$my_habrcomment.Root(0).Article().Text([object Text])" class="mol_html_view_text my_habrcomment_article_text mol_dimmer mol_paragraph mol_view" style="min-height: 72px;">

Может даже класс "mol_dimmer" лишний так как элемент и так называется "mol_dimmer".

Я не призываю использовать классы там где нужно использовать атрибуты.


Автор же использует атрибуты в роли классов. То есть у элементов куча атрибутов с пустыми значениями. И по именам этих атрибутов элементам задаются CSS стили.

Вы хотели сказать скачать дамп Википедии? Так то дампы регулярно делаются.

Ну если очень нужно отслеживать добавление и удаление элементу класса то можно отслеживать атрибут class. Он будет меняться при добавлении и удалении класса.


Разбиваем по пробелам oldValue и newValue. Чего нет из oldValue в newValue удалено. Чего нет из newValue в oldValue добавлено.

Information

Rating
Does not participate
Registered
Activity