Javascript Cytoscape,如何突出单击的边缘?

Javascript Cytoscape,如何突出单击的边缘?,javascript,cytoscape.js,Javascript,Cytoscape.js,我正在尝试获取单击的边缘,以便突出显示边缘。connectedNodes() 我发现的问题是: 即使我能够使用 cy.on('tap', function (event) { if (event.target.isEdge()) { selectedEdgeId = event.target.id; } } 使用 cy.edges("#" + vm.selectedEdgeId); 我只得到长度等于0的数据,即ca{length:0,_private{…

我正在尝试获取单击的边缘,以便突出显示
边缘。connectedNodes()

我发现的问题是: 即使我能够使用

 cy.on('tap', function (event) {
    if (event.target.isEdge()) {
        selectedEdgeId = event.target.id;
    }
 }
使用

 cy.edges("#" + vm.selectedEdgeId);
我只得到长度等于0的数据,即
ca{length:0,_private{…}


关于如何获取单击的边缘以便获取
connectedNodes()

事件的任何建议。目标是单击的边缘本身,因此不需要保存id或任何内容。我建议采取这种做法:

var cy=(window.cy=cytoscape({
容器:document.getElementById(“cy”),
boxSelectionEnabled:false,
自动取消选择:true,
风格:[{
选择器:“节点”,
css:{
内容:“数据(id)”,
“文本有效”:“中心”,
“文本halign”:“中心”,
高度:“60px”,
宽度:“100px”,
形状:“矩形”,
“背景色”:“数据(faveColor)”
}
},
{
选择器:“.highlight”,
css:{
“背景色”:“红色”
}
},
{
选择器:“边缘”,
css:{
“曲线样式”:“贝塞尔”,
“控制点步长”:40,
“目标箭头形状”:“三角形”
}
}
],
要素:{
节点:[{
数据:{
id:“顶部”,
faveColor:#2763c4“
}
},
{
数据:{
id:“是”,
faveColor:#37a32d”
}
},
{
数据:{
id:“否”,
faveColor:#2763c4“
}
},
{
数据:{
id:“第三”,
faveColor:#2763c4“
}
},
{
数据:{
id:“第四”,
faveColor:#56a9f7”
}
}
],
边缘:[{
数据:{
资料来源:“顶部”,
目标:“是”
}
},
{
数据:{
资料来源:“顶部”,
目标:“不”
}
},
{
数据:{
资料来源:“否”,
目标:“第三”
}
},
{
数据:{
资料来源:“第三”,
目标:“第四”
}
},
{
数据:{
资料来源:“第四”,
目标:“第三”
}
}
]
},
布局:{
姓名:“达格雷”
}
}));
//将tapstart绑定到边并高亮显示连接的节点
cy.bind('tapstart','edge',函数(事件){
var connected=event.target.connectedNodes();
connected.addClass('highlight');
});
//将tapend绑定到边,并从连接的节点中删除高光
cy.bind('tapend','edge',函数(事件){
var connected=event.target.connectedNodes();
connected.removeClass('highlight');
});
正文{
字体:14px helvetica neue,helvetica,arial,无衬线;
}
#赛义德{
身高:100%;
宽度:100%;
浮动:对;
位置:绝对位置;
}