Я видел несколько предложений о том, как добавить всплывающую подсказку в узел дерева Dojo, и некоторые из них, похоже, не работают, а другие заставляют меня задавать другие вопросы ...
Один способ, которым я пытался с ограниченным успехом, состоит в следующем:
var myTree = new dijit.Tree({
model: treeModel,
id: "myTree",
showRoot: false,
persist: false,
onClick: function(item){
console.log(item.name);
},
_onNodeMouseEnter : function(node, evt){
var tip = new dijit.Tooltip({
label: node.item.name,
connectId: [node.domNode.id]
});
}
});
Но это странное поведение - создавать всплывающую подсказку только при переходе с узла выше в дереве, и только если вы наводите указатель мыши на раскрытие с верхнего края ...
Во второй попытке я посмотрел на метод onMouseEnter Дерева, но у него нет доступа к элементу данных узла, и поэтому мне пришлось бы пройти через то, что кажется немного логичным, чтобы получить данные элемента ... поиск текущего идентификатора узла с помощью навигации по дереву DOM, а затем поиск этого элемента в магазине? ...
Наконец-то я обнаружил, что в Tree есть метод getTooltip (item), но когда я его настроил:
var myTree = new dijit.Tree({
model: treeModel,
id: "myTree",
showRoot: false,
persist: false,
onClick: function(item){
console.log(item.Obi_Id);
},
getTooltip: function(item){
return item.Secondary_Names;
}
});
всплывающая подсказка представляет собой обычное всплывающее HTML-окно с заголовком ...
Каков правильный (простой) способ выполнения подсказок додзё на динамических (ленивых) узлах дерева?
-robbie