Javascript jQuery лучший способ вставить большой кусок кода в DOM
у меня есть большой кусок кода, который нужно вставить в DOM в какой-то момент. Код также содержит некоторые переменные:
<ul id="info'+value+'" class="info"><li class="hide"></li><li class="lock"><ul>
// just a piece of the code with variable "value"
сейчас я делаю:
var codeToInsert = "<some code/>"
codeToInsert.insertAfter('#someID');
есть ли лучший способ сделать это с точки зрения производительности?
2 ответов
если вы хотите вставить большой кусок кода, используйте jQuery для его селектора, а затем используйте innerHTML
свойство DOM-это самый быстрый способ вставить большой кусок HTML.
Не обертывайте строку, которая должна быть вставлена в JQuery, оставьте ее как строку.
Е. Г.: $('#somePlaceholder')[0].innerHTML = myHTMLString;
.
http://www.quirksmode.org/dom/w3c_html.html:
в общем innerHTML быстрее, чем обычные методы DOM, потому что синтаксический анализатор HTML всегда быстрее, чем двигатель DOM. Если вы хотите сделать сложные изменения, используйте innerHTML. (Для простых изменений не имеет значения, какой метод вы используете, хотя innerHTML остается теоретически быстрее.)
если вы делаете конкатенацию строк в JS, создайте массив,push()
части и join()
В конце вместо добавления, например,+=
или +
. Это имеет значение esp. в IE.
верхней части моей головы, вы также можете использовать .добавлять. ,)(appendT (),.до. ,)(after () etc. Проверьте это для ряда таких функций:http://api.jquery.com/category/manipulation/