Почему мой значок jstree не меняется даже при указании его в настройках - PullRequest
0 голосов
/ 06 октября 2018

У меня есть jstree, для которого я хотел использовать другой значок вместо значка по умолчанию ,

, что я пробовал:

указано icon в настройке как types

"types" : {
   "default" : { "icon" : "glyphicon glyphicon-cloud" }
 },

, даже если оно не работает

ниже - демонстрационная версия (отображается значок папки):

$(function () {
    $('#jstree').jstree({
        "json_data" : {
            "data" : [
                {
                    "data" : "A node",
                    "metadata" : { id : 23 },
                    "children" : [ "Child 1", "A Child 2" ]
                },
                {
                    "attr" : { "id" : "li.node.id1" },
                    "data" : {
                        "title" : "Long format demo",
                        "attr" : { "href" : "#" }
                    }
                }
            ]
        },
        "types" : {
           "default" : { "icon" : "glyphicon glyphicon-cloud" }
         },
        "plugins" : [ "themes", "json_data", "ui" ]
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://old.static.jstree.com/v.1.0pre/jquery.jstree.js"></script>
<div id="jstree">
</div>

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Здесь вы идете, этот код работает с последней версией jstree, одну вещь, которую вы должны включить, это ссылка на font-awesome или, если вам нужно использовать glyphicon, тогда нужно включить его библиотеку, потому что он не бесплатный, поэтому используйте шрифт- удивительно для цели

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>jsTree test</title>
  <!-- 1 load Font-awesome css>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- 2 load the theme CSS file -->
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jstree/3.2.1/themes/default/style.min.css" />
</head>
<body>
  <!-- 3 setup a container element -->
  <div id="jstree">
  </div>

  <!-- 4 include the jQuery library -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.1/jquery.min.js"></script>
  <!-- 5 include the minified jstree source -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jstree/3.2.1/jstree.min.js"></script>
  <script>
  $(function () {
    $('#jstree').jstree({
        "core" : {
            "data" : [
                {
                    "data" : "A node",
                    "metadata" : { id : 23 },
                    "children" : [ "Child 1", "A Child 2" ]
                },
                {
                    "attr" : { "id" : "li.node.id1" },
                    "data" : {
                        "title" : "Long format demo",
                        "attr" : { "href" : "#" }
                    }
                }
            ]
        },
        "types" : {
           "default" : { "icon" : "fa fa-cloud" }
         },
        "plugins" : [ "themes", "json_data", "ui", "types"]
    });
});
  </script>
</body>
</html>
0 голосов
/ 07 октября 2018

Вы забыли включить плагин types:

"plugins" : [ "themes", "json_data", "ui", "types" ]

Кроме того, кажется, icon должен быть объектом , а не строкой:

Вы можете установить значок ключа - это должен быть объект, состоящий из двух ключей - изображение (строка - расположение изображения, которое будет использоваться в качестве значка) и положение (строка - левый и верхний пиксели изображения - 10px 40px, полезно только при использовании спрайтов - в противном случае не указывайте).

Похоже, вы перепутали API из текущей версии и вашей версии, v1.0pre.

...