Я собрал минимальный рабочий пример Cytoscape. Я могу заставить график отображаться, но меня больше всего интересует обработка событий, и вот тут у меня возникают трудности.
Проблема в том, что вместо возможности доступа к свойствам отдельных элементов я вижучто цель любого события не определена .
Ниже приведен весь мой HTML-файл. Обратите внимание - Меня интересует только строка
cy.nodes (). Bind ('mouseover', (e) => console.log (e.target));
Когда я смотрю на консоль, я вижу «неопределенное» только тогда, когда наведу указатель мыши на узел. Как я уже говорил выше, я хочу в конечном итоге получить доступ к свойствам элемента.
<!doctype html>
<html>
<head>
<title>Tutorial 1: Getting Started</title>
<script src="cytoscape.js"></script>
</head>
<style>
#cy {
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
}
</style>
<body>
<div id="cy"></div><script>
var cy = cytoscape({
container: document.getElementById('cy'),
elements: [
{ data: { id: 'a' } },
{ data: { id: 'b' } },
{
data: {
id: 'ab',
source: 'a',
target: 'b'
}
}]
});
cy.unbind("tap");
cy.bind("tap", "edge",function(evt) {
var tgt=this;
alert(tgt);
});
cy.nodes().bind('mouseover', (e) => console.log(e.target));
</script>
</body>
</html>