我正在尝试使用cytoscape / qtip访问JSON属性。其实我得到了以下
<script>
$(function(){
var cy = window.cy = cytoscape({
container: document.getElementById('cy'),
ready: function(){
},
layout: {
name: 'circle',
padding: 10
},
style: [
{
selector: 'node',
css: {
'content': 'data(name)'
}
},
{
selector: 'edge',
css: {
'target-arrow-shape': 'triangle'
}
}
],
elements: {
nodes: [
{ data: { id: 'j', name: 'Jerry' } },
{ data: { id: 'e', name: 'Elaine' } },
{ data: { id: 'g', name: 'George' } }
],
edges: [
{ data: { source: 'j', target: 'e' } },
{ data: { source: 'g', target: 'j' } }
]
},
});
cy.elements().qtip({
content: function(){ return this.id(); },
position: {
my: 'top center',
at: 'bottom center'
},
style: {
classes: 'qtip-bootstrap',
tip: {
width: 16,
height: 8
}
}
});
});
</script>
当我运行它时,我访问id JSON属性。它只是在屏幕上显示一个图形结构,当我点击j节点时,它使用qtip显示j,并为每个节点显示。但我想要显示的是每个节点的名称,当我点击每个节点而不是其ID 时。我试图用this.name()替换this.id()但它不起作用。我对jquery并不熟悉。
感谢您的关注
答案 0 :(得分:1)
试试这个:
content: function(){ return this.attr('name'); },