-
Notifications
You must be signed in to change notification settings - Fork 47
Namespaces
zziuni edited this page Mar 22, 2013
·
8 revisions
Wiki ▸ API Reference ▸ Core ▸ Namespaces
SVG는 HTML과 네임스페이스가 다르다. 그래서 D3는 네임스페이스를 쉽게 나눌 몇가지 도구를 제공한다.
# d3.ns.prefix
등록된 네임스페이스 접두사. 기본값은 다음과 같다.
{
svg: "http://www.w3.org/2000/svg",
xhtml: "http://www.w3.org/1999/xhtml",
xlink: "http://www.w3.org/1999/xlink",
xml: "http://www.w3.org/XML/1998/namespace",
xmlns: "http://www.w3.org/2000/xmlns/"
}
다른 네임스페이스의 원소가 속성 추가 필요성에 따라서 추가 접두사가 할당될 수 있다.
# d3.ns.qualify(name)
전달된 name 을 승인한다. name 은 네임스페이스 접두사를 가지고 있을 수도 있다. 그러므로 이름에 콜론 (":")이 있으면, 콜론의 앞 문자열이 d3.ns에 등록되어 있는 네임스페이스 접두사인지 확인 후, 네임스페이스 URL 전체와 로컬명을 뜻하는 space
와 local
속성을 가진 prefix 객체를 반환한다. 예를 들어 qualify("svg:text")
는 다음과 같다.
{space: "http://www.w3.org/2000/svg", local: "text"}
이름에 콜론이 없으면, 그냥 입력한 name 을 반환한다. 이 함수는 내부에서 createElementNS
같이 네임스페이스가 있는 메서드를 사용할 것인지, 같은 기능의 네임스페이스가 없는 메서드를 사용할 것인지를 결정하기 위해서 사용된다.