2015-11-17 70 views
2

我在查找正在拖動節點時觸發的事件。我認爲tapdrag看起來像我想要的,但只要鼠標按鈕沒有關閉(因此節點沒有被拖動,基本上是鼠標懸停),只要鼠標移動到節點上,tapdrag就會觸發。我嘗試了其他幾項活動,但似乎沒有做我需要的。在Cytoscape.js中爲節點拖動事件

如何在節點被拖動時觸發事件?具體來說,我想在拖動第一個節點時移動另一個節點,我寧願不使用複合節點。

回答

3

使用drag事件。

事件都一一列出,並記錄在案:http://js.cytoscape.org/#events/collection-events

您可以在第二個節點上手動.position()drag發生在第一個節點上。

要設置節點放置規則,就像步調一致移動兩個節點,使用汽車移動分機: https://github.com/cytoscape/cytoscape.js-automove

+0

謝謝!這正是我正在尋找的。 – TonyM

+0

@maxkfranz,我試圖做同樣的事情 - 移動另一個節點,而第一個被拖動時不使用複合節點。在普通節點的拖動事件中,我嘗試過'cy.nodes('myselector')。trigger('drag')',但它只選擇我想添加到拖動集合的節點,而不移動它。我如何以編程方式使它與我想要的節點一起移動? – ForOhFor

+0

@ForOhFor觸發事件不會移動節點。你必須自己'.position()'另一個節點,或者像automove擴展一樣使用更自動化的東西:https://github.com/cytoscape/cytoscape.js-automove – maxkfranz