Closed yfdyh000 closed 5 years ago
这个可能不大好解决, 暂时没有好的思路.
如果点击时再加载和渲染子树,是否会快一些,但目前的响应逻辑也许要大改。可能不行,展开的树比较大(项目较多)时,仍然会有很多次DOM插入。
虚拟DOM技术,不知道怎么做,和是否有帮助。
能否分阶段插入呢,比如每50项插入一个片段,最后再将片段汇总插入根容器。
暂时的想法是直接生成全树html, 一次性插入, 理论上要快得多吧 :)
增加了一个事先生成完整html再一次性插入的分支 "faster-tree", 经测略快了一点
感觉性能主要损失在xmlDoc.evaluate处, 也就是在解释xml时查询结点产生的.
目前侧栏初始化树时,如果rdf含有大量项目,可能会非常慢,性能分析看到很多jQuery造成的“解析HTML”。 我的一个2.5MB的rdf,加载一次会在解析HTML上花费40秒,期间侧栏不可用。 尝试了不少方法来调整
createLink
等代码,但未能缓解。将插入到根容器完全拆出来(改成插入
createDocumentFragment
或者分离的jQuery对象),不知道是否能有用,我尝试了但好像没效果。profilejson.zip