21
기존 형제에 새 형제를 삽입하는 데 문제가 있습니다.d3.js - 새로운 형제 요소를 삽입하는 방법
나는이 구조를
<svg>
<g>
<path class="data"></path>
<path class="data"></path>
</g>
</svg>
이이 구조를
<svg>
<g>
<path class="data"></path>
<text></text>
<path class="data"></path>
<text></text>
</g>
</svg>
을 원하지만 난 d3.js를 사용하는 경우 선택에도 불구하고 기능 난 다음 얻을
d3.select("g").insert("text", "path.data");
을 (삽입 학급별로)
<svg>
<g>
<text></text>
<path class="data"></path>
<path class="data"></path>
</g>
</svg>
어떤 아이디어가 있습니까?
매트 감사합니다. 이것은 내가 원하는 것을 해낸다. 어쨌든 d3.js 삽입 함수는 상수를 선택자로만 지원하기 때문에 (현재는) 최적의 솔루션 일 것입니다. 따라서 "this.nextSibling"을 선택자로 사용할 수 없습니다. 나는 이상적인 세계에서 상응하는 d3.js 함수는 다음과 같이 보일 것입니다 : d3.select (this.parentNode) .insert ("text", this); – Codetoffel
'.each'와'document.createElement'로 새로운 요소를 추가하면 노드가 문서에 추가되지만 어떤 이유로 든 표시되지 않게됩니다. 아마도 d3의'insert() t'를 사용하는 것이 가능하지만,'insert()'에 전달 된 "before"선택자는 오직 하나의 요소만을 선택할 것입니다. –