이것은 간단한 질문 일 뿐이므로 힘든 시간을 보내고 있습니다. 새 SVG g 태그에 기존 SVG 모양을 "래핑"할 수 있습니까? ie group) d3.js를 사용하면, .wrap()
은 jQuery에서 작동합니까? "수동으로"새로운 g 태그를 만들려면 기존 요소를 해당 g로 이동하는 방법은 무엇입니까?기존 SVG 요소를 G 태그로 감싸기
6
A
답변
9
append
또는 insert
에 기존 DOM 요소를 전달하면 요소 (및 그 하위 요소)가 DOM 계층의 현재 위치에서 방금 삽입 한 위치로 이동됩니다. D3는 항상 삽입하거나 이전에 삽입 할 수있는 요소를 결정하는 기능을 사용할 것으로 예상하고, 우리가 each
문 내에서 모든 일을 할 때 그 필요는 없습니다 때문에
var stuffToBeWrapped = d3.selectAll(".stuff");
stuffToBeWrapped.each(function() {
d3.select(this.parentNode).insert("g", function(){return this;})
//insert a new <g> element immediately before this element
.attr("class", "wrapper") //set anything you want to on the <g>
.append(function(){return this;});
//move the content element into the group
});
이 좀 지저분입니다. 그러나 그것은 일을 끝내야한다!
(이미 페이지에 라이브러리를 가지고했을 경우는, JQuery와 메소드를 사용합니다. JQuery와 보통 가 SVG 요소를 조작 아무런 문제가되지 않습니다, 그것은 단지를 만들 수 없습니다!)
+1
아름다운 대답. 감사. – drewmoore
1
@AmeliaBR의 대답은 작업 할 수 없습니다, 내가 승인 된 솔루션은
관련 문제
- 1. 문장으로 나누고 태그로 감싸기
- 2. 기존 svg 태그에 svg 문자열 요소를 삽입하십시오.
- 3. clip-path 및 "g"태그로 번역 svg
- 4. svg : svg vs svg : g 요소의 성능
- 5. 텍스트에서 URL을 찾아 앵커 태그로 감싸기
- 6. 전화 번호를 강조 표시하고 태그로 감싸기 javacript
- 7. SVG 모양 안에 텍스트 감싸기
- 8. Snap.svg로 SVG-DOM 요소 감싸기
- 9. Nokogiri로 감싸기
- 10. xml의 텍스트를 Linq의 요소 태그로 XML로 감싸기
- 11. php - 문자열에서 HTML을 검색하고 코드 태그로 감싸기
- 12. 내용을 편집하지 않고 MediaWiki의 태그로 기사 감싸기
- 13. html 삽입없이 앵커 태그로 감싸기 2.5 M
- 14. jQuery를 사용하여 기존 요소를 조작하기 SVG
- 15. 기존 jquery 이벤트를 기본값으로 감싸기
- 16. 고분자 : 부모 요소를 둘레로 감싸기
- 17. SVG 클릭 가능 요소에서 g 요소를 만드는 방법
- 18. svg 또는 g 요소를 정렬하기위한 텍스트 앵커 유사 속성
- 19. SVG 요소를 svg 요소로 래핑하는 방법은 무엇입니까?
- 20. svg g 자식 요소 검색
- 21. SVG 요소를 컨테이너로 사용 하시겠습니까?
- 22. 굽힘 SVG`<g>` 곡선 주위
- 23. 태그의 집합을 <g> 태그로 감싸는 방법?
- 24. d3.js (maps) svg 요소를 기존 svg 요소 위에 추가 할 때 표시되지 않습니다.
- 25. Grails g : timeZoneSelect 태그로 작업 하시겠습니까?
- 26. Raphaël : 기존 SVG 세그먼트에 SVG 아이콘 추가
- 27. D3을 사용하여 기존 SVG 요소를 JSON 데이터로 채우기
- 28. body 태그로 svg 배경 이미지를 만들려면 어떻게해야합니까?
- 29. append ("svg : g")와 append ("g")의 차이점
- 30. javascript를 사용하여 div 안에 요소를 감싸기
D3가에 대한 모든 기능을 제공하지 않습니다 나에게
DOMException: Failed to execute 'appendChild' on 'Node': The new child element contains the parent
을 준 그래서같은 문제를 해결, 그것은'랩을 사용하는 것이 훨씬 쉽다()'if 그게 당신이 찾고있는 것을 해줍니다. –
@LarsKotthoff 그리고 jQuery는 SVG에서 요소를 줄 바꿈해도 괜찮습니까? – drewmoore
나는 그것을 사용한 적이 한번도 없었지만, 왜 그렇게해서는 안되는지 알지 못한다. 단지 DOM 일 뿐이다. –