jstree的一个节点的图标更改

时间:2014-01-08 13:33:02

标签: javascript jquery jstree

我使用jstree创建了一个树状结构,我想只需点击一个按钮即可更改一个节点的图标,但是图标不会更改图标。 我设法创建的代码到现在为止:

    function changeIcon()
    {
        $("#li1>a>ins.jstree-icon").css("background-image", "url(image.png)");
    }

通过按钮在onclick()事件中调用该函数。

我相信图像的路径可能是错误的(图像与创建树的php文件位于同一文件夹中),但我尝试更改具有相同“rel”属性的所有项目的图标,并且图标改变了。不确定是否需要这个,但可以肯定的是,这是我做的测试,所有带有文件属性的项目都改变了他们的图标:

    $("#test").jstree({
           "types" :{ "types" :{
                "file" : { "icon" : { "image" : "image.png" }}
           } },
            "plugins" : [ "themes", "html_data", "dnd", "ui", "types", "crrm" ],

        });

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

万一有人遇到同样的问题,我终于设法解决了这个问题。我必须将背景设置为透明,否则它会出现在图像上,这就是为什么没有出现的原因。 所以现在函数看起来像:

    function changeIcon()
    {
        $("#li1>a>ins.jstree-icon").css("background", "transparent");
        $("#li1>a>ins.jstree-icon").css("background-image", "url(image.png)");
    }