class - Cytoscape.js 在单击时更改节点的样式

标签 class click selection cytoscape.js

我似乎无法在单击时更改节点的样式。我需要以编程方式执行此操作以跟踪图中的两个节点,基本上是同时“选择”两个节点,每个节点都是我定义的不同类型。此处 ( http://js.cytoscape.org/#eles.addClass ) 中有一些示例,可以在工作表中为某些节点“删除”一种新样式。我不明白这些类是如何工作的,它们在样式表中的定义位置以及可以使用的事件。
该库的文档没有提供类的实际解释、定义它们的位置以及它们的用途。任何帮助深表感谢。

最佳答案

我认为这些类就像 css 类。当您第一次初始化 cytoscape 时,您可以有一个可选的 style参数如...

var cy = cytoscape({
  style: [
   {
    selector: '.myFirstClass',
    style: {
    'background-color': 'red',
    'shape': 'rectangle'
    ...
   },
   {
    selector: '.mySecondClass',
    style: {
    'background-color': 'blue',
    'shape': 'triangle'
    ...
   }
});

现在,当您更改节点的样式时,它将反射(reflect)您在样式表中设置的内容。所以...
cy.$('#nodeA').classes('mySecondClass'); ,其中 #nodeA是您节点的 ID。这会将您的第一个节点变成蓝色三角形。

希望有所帮助。

关于class - Cytoscape.js 在单击时更改节点的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40215892/

相关文章:

c++ - 如何使用专用线程类MyThreadClass

javascript - JavaScript 和 jQuery 中的单击源,人工还是自动?

javascript - 提示点播放按钮在第二次单击时不播放视频

python - 使用 QTextCursor 复制选定的文本

css - 使用 body::selection,我想自定义高亮颜色

c++ - MSVC++属性选项卡上的项目是什么意思?

oop - 为什么使用类而不是函数?

c++ - 函数需要访问另一个函数中的变量

angularjs - 点击 ng 时生成动态 html

c++ - 应用科学计算工作的面试测试