[javascript] Cytoscape.js에서 그래프의 특정 요소에 대한 클릭 이벤트를 처리하는 방법은 무엇인가요?
cy.on('click', '요소 선택자', 이벤트 핸들러)
를 사용하여 특정 요소에 대한 클릭 이벤트를 등록합니다.cy.on('click', 'node', function(event){ var clickedNode = event.target; // 클릭된 노드에 대한 작업 수행 });
위의 예제는 그래프에서 노드에 대한 클릭 이벤트를 처리하는 방법을 보여줍니다.
'node'
는 클릭할 요소의 선택자이며, 원하는 요소에 따라 변경할 수 있습니다. 클릭된 요소에 대한 작업은이벤트 핸들러
내에서 수행됩니다. 예를 들어, 클릭된 노드의 속성을 가져오거나 변경할 수 있습니다.cy.on('tap', 이벤트 핸들러)
를 사용하여 그래프 전체에 대한 클릭 이벤트를 등록합니다.cy.on('tap', function(event){ var target = event.target; if(target.isNode()){ var clickedNode = target; // 클릭된 노드에 대한 작업 수행 } else if(target.isEdge()){ var clickedEdge = target; // 클릭된 엣지에 대한 작업 수행 } });
위의 예제는 그래프 전체에 대한 클릭 이벤트를 처리하는 방법을 보여줍니다. 이벤트 핸들러에서
event.target
을 통해 클릭된 요소를 확인할 수 있습니다.isNode()
및isEdge()
를 사용하여 클릭된 요소의 유형을 확인한 후 해당하는 작업을 수행할 수 있습니다.
이외에도 Cytoscape.js는 다양한 이벤트 처리 방법과 기능을 제공합니다. 자세한 내용은 공식 문서를 참조하시기 바랍니다.
- 공식 문서: https://js.cytoscape.org/
- GitHub 저장소: https://github.com/cytoscape/cytoscape.js