Лучший способ создать большие статические элементы DOM в JavaScript? ⇐ Jquery
-
Гость
Лучший способ создать большие статические элементы DOM в JavaScript?
У меня есть много элементов, которые один из моих JS-виджетов должен часто создавать и добавлять в DOM. Они никогда не меняются.
Таким образом, одним из вариантов может быть сохранение самого HTML в виде строки в JS и использование JQuery для создания элементов из строки, а затем добавление их в документ:
var elements = "12"; функция создания() { вернуть $(элементы); } $("тело").append(create()); Другой вариант — написать функцию, которая будет использовать document.createElement("div") или $("") много раз для построения элементов, добавления их друг к другу там, где это необходимо, а затем добавления к элементу. документ:
функция create() { return $("").append($("")...... } $("тело").append(create()); В первом случае у меня есть большая строка JS, которая на самом деле представляет собой HTML. Во втором случае у меня есть громоздкий кусок JS, который фактически представляет HTML.
Есть ли преимущества (недостатки) у того или другого? Есть ли лучшее решение, о котором я не думаю?
У меня есть много элементов, которые один из моих JS-виджетов должен часто создавать и добавлять в DOM. Они никогда не меняются.
Таким образом, одним из вариантов может быть сохранение самого HTML в виде строки в JS и использование JQuery для создания элементов из строки, а затем добавление их в документ:
var elements = "12"; функция создания() { вернуть $(элементы); } $("тело").append(create()); Другой вариант — написать функцию, которая будет использовать document.createElement("div") или $("") много раз для построения элементов, добавления их друг к другу там, где это необходимо, а затем добавления к элементу. документ:
функция create() { return $("").append($("")...... } $("тело").append(create()); В первом случае у меня есть большая строка JS, которая на самом деле представляет собой HTML. Во втором случае у меня есть громоздкий кусок JS, который фактически представляет HTML.
Есть ли преимущества (недостатки) у того или другого? Есть ли лучшее решение, о котором я не думаю?
Мобильная версия