簡體   English   中英

更改d3.js節點的填充顏色

[英]Change fill color of d3.js node

我正在這里處理示例代碼-http: //bl.ocks.org/cjrd/6863459來創建有向圖並在線使用它。 該代碼已經有一個名為

GraphCreator.prototype.changeTextOfNode

此功能在節點上放置可編輯的文本,以便用戶可以更改值,並且當用戶在按住Shift鍵的同時單擊節點時會調用該值。 現在,我想做一些非常相似的事情。 我希望在按住Ctrl鍵的同時單擊節點時更改節點的顏色。 為此,我想到的功能是-

GraphCreator.prototype.changeColorOfNode = function(d3node, d){
  try{
      d3node.style("fill","red");
    }
    catch(e){
      alert(e.message);
    }
}

現在,我總是將顏色更改為紅色,以檢查其是否有效。 我看到的是,代替代表節點的圓圈的填充顏色發生了變化,圓圈中文本的字體顏色變為了紅色。 有人知道我將如何更改填充顏色嗎?

當前,您正在將填充樣式應用於g元素而不是圓形。 這就是為什么僅文本顏色會更改的原因。 您應該嘗試如下所示。

d3node.select("circle").style("fill","red");

查找節點的現有顏色

d3node.select("circle").style("fill"); //returns current fill color applied

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM