Rangy функция HighlightSelection производительности

Почему ранги становятся более вялыми, когда количество аннотаций, сделанных с помощью функции highlighter.highlightSelection (тип марки) растет? Производительность вначале очень хорошая, но она уменьшается по мере роста аннотаций.

Итак, как я могу сделать, чтобы улучшить производительность функции highlighter.highlightSelection()? потому что, когда я выбрал много разных частей моего HTML, производительность ухудшается в геометрической прогрессии. Если вы выберете фрагмент html очень долго, производительность будет наихудшей. Я пытался это исправить, но я не знал как.

Кто-нибудь знает, почему это может произойти?

1 ответ

Решение

Производительность ухудшается, потому что Rangy должен удалять и воссоздавать все существующие блики при каждом создании нового блика. Эта неэффективность является одной из причин, почему модуль подсветки никогда не включался в качестве официального модуля Rangy.

Я работаю над другим подходом, основанным на смещении символов, который может улучшить производительность, поэтому есть надежда.

Другие вопросы по тегам