0

我想知道是否有 jquery .html(variable) 函数的替代方法?它似乎很慢,并且在将 html 插入 DOM 时也会冻结。

我尝试使用innerHtml,效果很好,速度也非常快。但是由于某种原因,当我在插入的代码中有任何 jquery 或 MS ajax 时,这些脚本只能在 FF 中工作。

我正在尝试插入大约 2000 行代码。

4

3 回答 3

3

问题是您在页面中插入的 jquery 或 ms ajax (javascript) 代码没有被评估。jquery 中的 .html 方法为您执行此操作,但如果您想使用 .innerHtml,您必须使用 eval() 函数手动评估它:

eval(«javascript code here»);

所以步骤是,使用 innerHtml 插入 html,然后使用 eval 函数仅评估 javascript 部分。

于 2009-10-07T19:55:39.727 回答
0

如果您更具体地说明您的问题,那就太好了。一般来说,不需要进行 2000 次 .html() 更新,您必须将其加入到更大的 .html() 调用中,因为在每个 .html() 之后重建整个 DOM,这会导致速度变慢。

于 2009-10-07T19:40:46.620 回答
0

我只是在阅读这个答案,评论中有一个关于使用DOM 文档片段的链接,以及它与“正常”方法相比有多快……检查一下。它实际上并没有将基准与 jQuery 进行比较,但它会给你一个大致的概念。

于 2009-10-08T03:44:58.143 回答