我想知道是否有替代jquery .html(变量)函数的方法?它似乎很慢,并且在将html插入DOM时也会冻结。
我尝试使用innerHtml,这种方法效果很好,也非常快。但由于某些原因,当我在插入的代码中有任何jquery或MS ajax时,这些脚本只能在FF中工作。
我正在尝试插入大约2000行代码。
答案 0 :(得分:3)
问题是您不会评估您在页面中插入的jquery或ms ajax(javascript)代码。 jquery中的.html方法为你做了,但是如果你想使用.innerHtml,你必须使用eval()函数手动评估它:
eval(«javascript code here»);
所以步骤是,使用innerHtml插入html,然后使用eval函数仅评估javascript部分。
答案 1 :(得分:0)
如果您更详细地说明您的问题,那就太棒了。 一般来说,没有必要进行2000 .html()更新,你必须将它加入更大的.html()调用,因为在每个.html()之后重建整个DOM,这会导致速度变慢。
答案 2 :(得分:0)
我刚刚阅读this answer并且评论中有关于使用DOM document fragments的链接以及它与“正常”方法的比较速度有多快...请查看。它实际上并没有将基准与jQuery进行比较,但它会给你一个大致的想法。