Chrome doesn't select <linearGradient>
with D3.js. In the following code all selections are empty.
var defs = d3.select("body").append("svg").append("defs");
defs.append("linearGradient");
defs.append("linearGradient");
console.log(defs.selectAll("linearGradient")); // empty
console.log(defs.selectAll("lineargradient")); // empty
console.log(d3.selectAll("linearGradient")); // empty
If you replace <linearGradient>
with say <mask>
it's all right.
var defs = d3.select("body").append("svg").append("defs");
defs.append("mask");
defs.append("mask");
console.log(defs.selectAll("mask")); // 2 elements selected
Firefox works fine for both. I'm using Chrome 28.0.1500.95. Please suggest a way to select the gradients.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…