Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Events Cytoscape事件目标未定义_Events_Cytoscape.js - Fatal编程技术网

Events Cytoscape事件目标未定义

Events Cytoscape事件目标未定义,events,cytoscape.js,Events,Cytoscape.js,我总结了一个最小的工作Cytoscape示例。我可以让图表显示出来,但我最感兴趣的是处理事件,这就是我遇到困难的地方 问题在于,我无法访问单个元素的属性,而是可以看到任何事件的目标都是未定义的 下面是我的整个html文件。请注意-我只对该行感兴趣 绑定('mouseover',(e)=>console.log(e.target)) 当我查看控制台时,每当我将鼠标指针移到节点上时,我只能看到“未定义”。如上所述,我希望最终能够访问元素属性 <!doctype html> <htm

我总结了一个最小的工作Cytoscape示例。我可以让图表显示出来,但我最感兴趣的是处理事件,这就是我遇到困难的地方

问题在于,我无法访问单个元素的属性,而是可以看到任何事件的目标都是未定义的

下面是我的整个html文件。请注意-我只对该行感兴趣

绑定('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>

教程1:入门
#赛义德{
宽度:100%;
身高:100%;
位置:绝对位置;
顶部:0px;
左:0px;
}
var cy=细胞景观({
容器:document.getElementById('cy'),
要素:[
{data:{id:'a'}},
{数据:{id:'b'}},
{
数据:{
id:'ab',
资料来源:“a”,
目标:“b”
}
}]
});
cy.unbind(“tap”);
cy.bind(“抽头”、“边缘”、功能(evt){
var tgt=此;
警报(tgt);
});
绑定('mouseover',(e)=>console.log(e.target));

您可以在下面的代码片段中看到一个工作示例,我只是更改了导入,没有其他更改:

var cy=cytoscape({
容器:document.getElementById('cy'),
要素:[{
数据:{
id:'a'
}
},
{
数据:{
id:'b'
}
},
{
数据:{
id:'ab',
资料来源:“a”,
目标:“b”
}
}
]
});
cy.unbind(“tap”);
cy.bind(“单击”、“节点、边缘”、函数(evt){
var tgt=evt.target.data();
console.log(tgt);
});
绑定('mouseover',(e)=>console.log(e.target.data())
#cy{
宽度:100%;
身高:100%;
位置:绝对位置;
顶部:0px;
左:0px;
}

教程1:入门

是的,您的示例当然有效。问题在于脚本版本。你包括的那个没问题。我从别处保存在磁盘上的两个不同的文件引起了各种各样的问题。为什么会这样,我不知道。