Cytoscape:即使有教程,也会出现类型错误

Gio*_*gio 3 javascript cytoscape.js

我想使用Cytoscape.js,所以我复制粘贴了他们的教程

var cy = cytoscape({
    container: document.getElementById('cy')
});
Run Code Online (Sandbox Code Playgroud)

...我得到了这个(在 Firefox 控制台上):

TypeError: r is null
Run Code Online (Sandbox Code Playgroud)

和这个(在 Safari 控制台上):

TypeError: null is not an object (evaluating 'r.className')
Run Code Online (Sandbox Code Playgroud)

该错误在 Chrome 上仍然存在,始终指示 的第 39 行cytoscape.min.js

当然,我有一个 HTML<div id="cy"></div>元素。

为什么我会收到此错误?另外,我尝试添加一些节点,它们在 JSFiddle 上呈现,但不在浏览器上呈现......

Gio*_*gio 5

错误原因如下:我试图在页面加载之前#cy初始化 Cytoscape 图形,因此 Cytoscape在 HTML 中找不到任何div。

解决方案只是将初始化包装在一个函数中,并在页面加载后调用该函数(使用<body onload="setupMyGraph();"> ... </body>)。