×Закрыть

Тормоза при наборе текста в Safari

А может уважаемая администрация разобраться, почему в Safari 9.0.3 в топиках с 1к+ сообщений очччччееень медленно набирается текст в поле ввода комментария? При этом сжирается одно из ядер процессора.

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Похоже, не только на ДОУ такие проблемы бывают:
twitter.com/...status/714929296737853440

А зачем опять сломали? Тормозит пуще прежнего

Вроде не ломали и не меняли ничего такого в последнее время, может это Apple что-то сломал? :)

Набор текста в Safari не тормозит даже на старом (относительно) iPad-е в топике на 5000 комментариев.

да, после перезапуска браузера лагать перестало, ложная тревога

Только что добавил несколько изменений, которые, возможно, улучшают ситуацию с набором текста.

у меня перестало тормозить, спасибо

Вероятнее всего ошибка самого Сафари, приводящая к циклическому рендерингу. А вообще топики с 1к+ коментов — это зло. Дизайн под такое не рассчитан. Я считаю, для них нужно применять отдельные правила, ускоряющие рендер. В частности, понимать, что люди не способны за 1 раз проглотить 1000 коментов, а значит нет смысла их выстраивать по правилам дизайна.

Суть хака: применить более простой CSS класс для не-отображаемых коментов. А уже в процессе прочтения, если человек остановил прокрутку (читает то бишь) — фоново применить более тяжёлый ко всем коментам, которые в пределах доступности прокрутки.

Проблема на самом деле очень древняя, и не только на Сафари она. Firefox ещё. Просто нужно тестить на топике где коментов реально много.

Интересно, в других браузерах с текст набирается получше или не пробовали?
Safari пока нет под рукой :(

Проблема действительно существует, я замечал ее на темах с 3К+ комментов.
100% загрузка возникает в JavaScriptCore::Marking треде,
- JavaScriptCore::Marking -- JSC::GCThread::gcThreadMain() (in JavaScriptCore) --- JSC::GCThread::waitForeNextPhase() (in JavaScriptCore)
os x 10.11.3, safari 9.0.3
Судя по комментам, это древняя проблема, и толковых решений у нее нет

попробовал firefox, там определённая задержка тоже есть, но в сафари вообще печатать невозможно — печатаешь предложение, а потом несколько секунд смотришь как оно по букве отрисовывается

Да, я уже понял, у меня как раз Firefox, и я как-то вообще не замечал таких проблем, даже в больших топиках и на слабом железе.

Тыжпрограммист, открой девелопмент консоль и продебажь

я как-то не по js и фронтенду
в общем оно какой-то composite очень старательно делает для каждой напечатанной буквы
www.dropbox.com/...6-02-23 12.32.17.png?dl=0
и это скорее всего как-то связано с функцией Ку :)
www.dropbox.com/...6-02-23 12.36.19.png?dl=0

и это скорее всего как-то связано с функцией Ку :)

Вот она:
github.com/...aster/src/autosize.js#L83

Сегодня попытался там немного оптимизировать, не уверен, правда, что получилось. Если несложно — потестируйте, пожалуйста «тормоза при наборе текста в Safari в топиках с 1к+ сообщений» — осталась ли эта проблема и улучшилось ли что-либо с ней. Спасибо.

дома проверю, вчера меня это сильно напрягало уже — было практически невозможно печатать

проверил, вроде чуток лучше но в целом все еще плохо

і поки ми ще тут, у мене такий баг у Сафарі на кнопках J/K
рухаюся вниз з J, віднімає лічильник нових коментів
піднімаюся вверх з K на кілька комментів вверх, дочитати-перечитати
рухаюся вниз з J — знову віднімає з лічильника, хоча не мало би, я ж проходжуся по прочитаним новим
у результаті, коли на лічильнику 0 — у мене ще багацько зелених коментарів у полі зору, та й десь внизу по іншим гілкам, а побачити я їх можу тільки скроленням, бо J уже туди не йде

Все равно тормозит. Стало чуть быстрее, но все равно сложно набирать текст.
iOS 9.2.1, iP 5s

такое ощущение, что оно зависает теперь на каждом третьем символе. Всё равно на macbook pro 2014 печатать в теме про «почему программисты уезжают» — невозможно. Приходится набирать текст в Sublime и потом вставлять в форум

бггг хороший рецепт буду так дома делать
web 2.0 билять

Сейчас уже должно работать без рецепта :)

Подписаться на комментарии