需要为以下站点提供“treeview”(导航)JS 小部件的建议:
- 非常大(最多 100,000 页)
- 静态 - 所有页面都是从外部源生成的,并且小部件嵌入在每个页面中。
澄清一下:没有框架,也没有应用程序服务器。所有页面都生成并放置在一个文件系统中,每个页面都是独立加载的,这意味着每次都会加载树视图导航,因此它应该使用多个文件并按需加载树的部分,或者超级-高效的。
商业OK。
需要为以下站点提供“treeview”(导航)JS 小部件的建议:
澄清一下:没有框架,也没有应用程序服务器。所有页面都生成并放置在一个文件系统中,每个页面都是独立加载的,这意味着每次都会加载树视图导航,因此它应该使用多个文件并按需加载树的部分,或者超级-高效的。
商业OK。
使用可混搭的树。点击这里查看详细架构
所有严肃的 JS 树小部件都允许动态加载子级。这里的关键问题是它们中的大多数会向服务器发送类似的查询,getChildren?parent=23674
而这不适用于您的情况。
由于站点是静态的,因此您需要以 JSON 格式生成包含树分支描述的文件,并在用户展开树中的节点时从服务器请求这些文件。您还可以创建包含作为 HTML 的子树的文件,但是当您将数据发送到客户端并使用 JavaScript 将数据转换为 HTML 时,您会更加灵活(另外您将节省大量带宽)。
试试雅虎的TreeView。有一个如何动态加载数据的例子。
注意到所有链接都不起作用。然而,有一个出于完全相同的原因而编写,即在大量数据上的效率。您可能想查看PixoTree,看看它是否适合您。
PS。我知道这是一个老问题,但认为它可能会对偶然发现这个问题的人有所帮助。