У меня есть много элементов, которые один из моих виджетов JS нужно создавать и добавлять в DOM часто. Они никогда не меняются.
Таким образом, одним из вариантов является сохранение самого HTML как строки в JS и использование JQuery для создания элементов из строки, а затем добавление его в документ:
var elements = "<div><table><tr><td>1</td><td>2</td></tr></table></div>";
function create() {
return $(elements);
}
$("body").append(create());
Другой вариант - написать функцию, которая будет использовать document.createElement( "div" ) или $( "<div> " ) много раз, чтобы создавать элементы, добавлять их друг к другу там, где это необходимо, а затем присоединяться к документ:
function create() {
return $("<div>").append($("<table>")......
}
$("body").append(create());
В первом случае у меня есть большая строка JS, которая на самом деле является HTML. Во втором случае у меня есть громоздкий кусок JS, который фактически представляет HTML.
Есть ли (преимущества) для одного или другого? Есть ли лучшее решение, о котором я не думаю?