dynatree节点大于3000的性能问题

时间:2014-08-13 07:06:41

标签: jquery dynatree

我们有一个用例,我们正在加载超过3000个节点的dynatree。它加载正常,在postinit上触发了ajax,在回调时我们正在更新节点(根据ajax调用后获得的标志更改颜色或图标)。性能相当缓慢,对于3000个节点渲染大约需要。 1分钟或2分钟,浏览器偶尔会挂起。

为了更新每个节点,我们使用 node.render() 我的问题是我应该使用任何其他API来更新节点吗?

谢谢, 查兰

PS:我是新手,所以如果我没有遵守任何规则。请道歉。

1 个答案:

答案 0 :(得分:0)

在节点上设置额外的类应该更高效(例如通过传递' addClass'使用json)并添加一些额外的CSS来改变外观。 示例:http://wwwendt.de/tech/dynatree/doc/sample-theming.html

<强>更新

您是从HTML还是Ajax初始化树?从Ajax初始化将允许直接在JSON响应中添加依赖于状态的类,这将避免第二次Ajax调用和所有额外渲染。

如果你真的想采用posprocess方法,请尝试一个tree.redraw()而不是单独的node.render()来电。