我一直在谷歌搜索,似乎无法找到答案。我也会在JavaScript InfoVis Toolkit Google Group中提出这个问题。
我想知道是否可以使用InfoVis spacetree动态隐藏/显示工具提示。目前它们已打开,我已经设置了这样的提示:
Tips: {
enable: true,
type: 'HTML',
offsetX: 10,
offsetY: 10,
onShow: function (tip, node)
{
tip.innerHTML = getToolTip(node);
}
},
但我似乎找不到任何关于我以后如何关闭它们的参考资料。例如,我希望用户能够选中一个框以隐藏/显示工具提示,然后相应地显示它们。我试过 st.tips.hide()(st是我的spacetree的名字),但它没有做任何事情。如果我执行 alert(st.tips),我会得到一个对象,但我不知道对象上有哪些可用的函数。
任何帮助将不胜感激!谢谢!
答案 0 :(得分:4)
我正在使用ForceDirected并遇到类似的问题。我希望在用户使用光标离开节点后,将工具提示显示一段时间...
调用
graph.tips.hide(false)
对我有用(你有没有试过传递一个参数来隐藏?)。 我不能告诉你是否传递真假,他们都为我工作......
总的来说,您可以尝试以下方式:
Tips: {
enable: true,
type: 'HTMl',
onShow: function(tip, node, isLeaf, domElement) {
//Check if checkbox is checked
var checked = $('input[type=checkbox]').is(':checked');
if (checked == true){
tip.innerHTML = getToolTip(node);
} else {
graph.tips.hide(true);
};
}
在任何情况下,这只是一个想法,我没有时间测试它(伪代码?..)
希望这有帮助!
干杯