Javascript jQuery将一大段代码插入DOM的最佳方法

时间:2010-09-08 11:59:49

标签: jquery performance dom insert

我有一大段代码需要在某些时候插入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 个答案:

答案 0 :(得分:9)

如果要插入大段代码,请使用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(),而不是附加,例如+=+。特别是它有所作为。在IE中。

答案 1 :(得分:0)

我可以使用.append(),. append(),. before(),. after()等。检查一下这些函数:http://api.jquery.com/category/manipulation/