Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   быстрая отрисовка элементов JS (DOM) (https://javascript.ru/forum/events/48764-bystraya-otrisovka-ehlementov-js-dom.html)

Brook 16.07.2014 09:09

быстрая отрисовка элементов JS (DOM)
 
Доброго времени суток,
Недавно задумался об ускорение отрисовки DOM элементов.

Для примера:
при нажатии кнопки надо отрисовать блок (div) с 10 блоками (div), каждый блок имеет внутри еще по 2 элемента (div OR input OR img)

Как делал:
.. раньше просто брал чистый html и выводил (1000 символов за раз)
.append('<div cl....</div>')
.. сейчас создаю переменные для повторяющихся частей кода потом все склеиваю и вывожу (650 символов за раз)
var A = '<div ', B = '</div>';
... .append([A,'class=.....',B].join(''))

Это позволило отрисовывать в разы быстрее:
в первом случае 450-700мс на 10 повторений
во втором 50-130мс на 10 повторений

Вопрос: КАКИМИ СПОСОБАМИ ЕЩЕ МОЖНО УСКОРИТЬ ВЫВОД ПРИ ЭТОМ СЭКОНОМИВ СИМВОЛЫ

Заранее сасибо:thanks:

ixth 18.07.2014 00:01

Тесткейс или не было!
В обоих случаях в append передается строка, которая, пройдя ряд проверок, преобразовывается в html. Мне кажется, это самая тяжелая часть.

рони 18.07.2014 00:53

Brook,
ixth,
http://learn.javascript.ru/multi-insert


Часовой пояс GMT +3, время: 00:04.