带有Html标签的Infovis - 节点拖动不再有效

时间:2013-10-16 14:38:29

标签: infovis thejit

我在强制导向图中为我的节点使用了html标签。

Label:{
  type: 'HTML'
},

onCreateLabel: function (domElement, node) {
  domElement.innerHTML = node.name;
  var style = domElement.style;
  style.border = "1px solid red"
  style.fontSize = "1.5em";
  style.color = "#ddd";
},

onPlaceLabel: function (domElement, node) {
  var style = domElement.style;
  var left = parseInt(style.left);
  var top = parseInt(style.top);
  var w = domElement.offsetWidth;
  style.left = (left - w / 2) + 'px';
  style.top = (top + 30) + 'px';
  style.display = '';
}

看起来很好。但是,当我尝试在画布周围移动节点时...我无法做到。如果将鼠标放在节点上,左键单击,然后拖动,整个图形将移动 - 而不仅仅是所选节点。 html位于节点下方,但我仍然无法再拖动画布周围的任何特定节点。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

作为一种临时解决方法,我最终为标签创建了一个透明边框,该标签向上延伸到节点上(border-top:150px solid transparent); ...边框使节点可以点击。