Этот проект, над которым я работаю, имеет список элементов и преобразует их в «граф» (не настоящий граф, но его можно назвать псевдо-графическим). У меня есть набор данных, я запускаю цикл for
над данными, а затем создаю элемент li
для каждого из них, создаю и родительский ul
, добавляю li
s и затем добавляю родителя к другому элементу DOM (мы будем называть это прародителем) уже на странице. После этого мне придется вносить в этот список последующие обновления в зависимости от взаимодействия с пользователем.
Кроме того, все это в контексте использования jQuery.
Теперь мой вопрос: быстрее ли создавать элементы один раз, а затем обновлять итоговый HTML при каждом последующем вызове, или быстрее воссоздавать каждый элемент, empty()
родительский элемент (который избавляет от родительского элемента? ul
), а затем заново добавить вновь созданный ul
(что я сейчас и делаю)?
Имейте в виду, что когда я воссоздаю li
s, их вообще нет в DOM, поэтому при их воссоздании перерисовки / перекомпоновки не происходит. Перекраска происходит только тогда, когда я заново добавляю только что созданный ul
.
Я разговаривал с коллегой, и он сказал, что было бы лучше просто обновить элементы HTML после их создания, а не воссоздавать их каждый раз. я думал о том, чтобы пойти по этому пути, но потом я подумал, что обновление существующих li
на самом деле вызовет перерисовку, скажем, 50 элементов, а не просто создание одного массивного с empty()
, а затем повторное добавление вновь созданного ul
.
мысли