[Javascript] Richiamare un attributo DATA

bruniko

Nuovo Utente
12 Ago 2016
2
0
1
Ciao,
utilizzando le librerie D3.js, creo dei cerchi e da un file esterno, assegno le proprietà. Per alcuni ho la necessità di avere un diametro differente, quindi portarli in primo piano. A fine ciclo duplico il cerchio per averlo sovrapposto. A questo punto non riesco a recuperare le dimensioni del raggio dalla funzione iniziale (d).
Assegno al cerchio originale un attributo DATA, ma non riesco a farlo richiamare al nuovo cerchio...

Codice:
var cards = svg.selectAll()

cards.enter().append("circle")

.attr("cx", function(d) { return ((d.ordinate - 1) * gridSize);  })

.attr("cy", function(d) { return ((d.ascisse - 1) * gridSize); })

.attr("class", function(d) { return ("portasopra"+d.profondita+" elimina"); })
.attr("r", 2)
.transition("elastic")
.duration(1000)
.attr("r", function(d) { return (d.diametro/2); })




// assegno ad ogni oggetto la variabile data-livello
.attr("data-livello", function(d) { return (d.diametro); })




......




var avanti2 = d3.selectAll(".portasopra2");

var origNode = avanti2.node();

var duplica = d3.select(d3.selectAll(".portasopra2").node().parentNode.appendChild(origNode.cloneNode(true), origNode.nextSibling));

duplica.attr("r", 1)

.transition("elastic")

.duration(1000)

.attr("r", avanti2.livello) //non carica l'attributo del raggio
 

Discussioni simili