【发布时间】:2017-04-27 19:11:02
【问题描述】:
我正在使用 cytoscape.js 制作一个简单的图形网络。我希望每个节点都包含一个 href 以链接到更多信息,或者在悬停时也可以显示信息。是否可以将此功能添加到 cytoscape 节点?
【问题讨论】:
-
您是否查看过the demos,例如linkout demo?
标签: cytoscape.js
我正在使用 cytoscape.js 制作一个简单的图形网络。我希望每个节点都包含一个 href 以链接到更多信息,或者在悬停时也可以显示信息。是否可以将此功能添加到 cytoscape 节点?
【问题讨论】:
标签: cytoscape.js
首先,将 href 添加到数据标签。像这样:
{ data: { id: 'c' , href: 'example.com'} }
然后在脚本中插入:
cy.on('tap', 'node', function(){
try { // your browser may block popups
window.open( this.data('href') );
} catch(e){ // fall back on url change
window.location.href = this.data('href');
}
});
【讨论】:
你可以在生成节点的时候添加信息,比如:
data: {id: 'nodeName', label: 'nodeLabel', link: 'your_href'}
然后您可以使用qtip 显示所述链接或仅使其成为标签的一部分。
您可以使用data(link) 作为标签或在qtip 中使用this.data("link") 来调用每个节点的链接:
{selector: 'edge', style: {'label': 'data(link)',}}
【讨论】: