2015-05-23 68 views
0

在我的svg元素中,沒有組。特別是我選擇一些組的基礎上它class。作品。如何讓孩子們從循環「小組」?

當我選擇group我正在循環使用each迭代器。在循環中我如何找到一些類名的子元素。我試過但沒有工作,任何人糾正我的pelase?

我嘗試:

var fadeHandler = function() { 
    //group class 
    d3.selectAll('.subAppGroupDetail').each(function() { 
     var arc = d3.select(this) 
        .select(d3.select('.subAppGroupDetail')) 
        //.subAppGroupDetail path name 
        .style('opacity', 1); //changing opacity 
    }) 
} 

fadeHandler(); // calling function 
+0

你能發佈一個你的svg結構的例子嗎? –

+0

功能很長。我有多個小組,在小組中我想選擇下面的小孩並應用一些不透明度。因爲我需要增加多個孩子的不透明度,所以我需要這個。 – 3gwebtrain

+0

@mef,爲了試用目的我做了這個:http://jsfiddle.net/cz2wzkyn/你可以在這裏試試嗎? – 3gwebtrain

回答

0

要選擇子元素,你可以鏈上的兩個.selectAll這樣:

d3.selectAll('.parentClass').selectAll('.childClass') 

使用.each你不需要。

演示在這裏:http://jsfiddle.net/cz2wzkyn/1/

P.S:在你的問題貼出你的父母和孩子類使用相同的名稱代碼的例子,你可能要檢查是否正確。

+0

我需要選擇每個人分別使用'each'來添加不同的動畫時間。 (我會添加不同的延遲時間) - 你可以更新你的解決方案 – 3gwebtrain

+0

你可以使用'.delay(函數(d){...}'爲此。參考[API參考](https:// github。 com/mbostock/d3/wiki/Transitions#delay)。(仍然不需要'.each') –

+0

你能否給我解決這個問題:我有6個組,每個組包含1個路徑和1個組。第一組和第一路徑的不透明度爲1和兄弟組需要在路徑不透明度完成後具有相同的值。在我需要繼續下一個組之後...像這樣?如何處理這個 – 3gwebtrain