JQuery JSTree加载为打开状态,然后最小化。

3
首先,我已经潜水了多年,希望这篇文章不仅对我有帮助。
我有一个jstree,它是使用非常少的JavaScript为我的站点生成的。理想情况下,我希望页面加载后仅显示2个顶级文件夹。
然而,当前页面在切换到正确视图之前,会显示所有文件夹、子文件夹、文件等名称约0.5秒左右。树结构中可能有约200个项目。
我添加了一个手动的tree.bind,它做了一个“close_all”,我也尝试隐藏最终出现的DIV。即使我在创建树后放置了显示DIV的代码,它仍然在隐藏自己之前显示所有内容。
我正在使用jsTree 1.0-rc3
大家有什么想法吗?
<script type="text/javascript">

(document).ready(function () {
    var tree = $("#sharepointHierarchy");
    tree.bind("loaded.jstree", function (event, data) {
    tree.jstree("close_all");
    });

    $("#sharepointHierarchy").jstree({
        'plugins' : [ "themes", "html_data", "types", "ui" ],
        'core' : {/* core options go here */},
    });
        document.getElementById("sharepointHierarchy").style.display="block";
});
</script>

奇怪。你能在jsFiddle上放一个演示吗? - glortho
谢谢你提醒我,我会尽快发布我的解决方案。 - whoombat
1个回答

0
我通过在函数()的末尾添加以下代码来掩盖这个问题。这很直截了当,只是让表格在显示之前有足够的时间来加载。
setTimeout(function() {
    $("#sharepointDiv").show();
    },1200);

我希望这也能帮助到其他人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接