2012-05-14 54 views

cevap

19

XHTML kodunda, web sayfasındaki diğer XML tabanlı dilleri ayırt etmek için ad alanları kullanılabilir. Burada, "svg" ad alanı "svg" etiketinden önce kullanılır.

namespace:tagname 

Bu

durumunda yararlı olabilir iki etiketleri (örneğin, XHTML ve SVG olarak) aynı ada sahip ve tam olarak başvurmak hangisini belirtmek istiyoruz. Etiketler xmlns özniteliği ile belirtilebilir. Bildiğiniz gibi, XHTML dokümanlar

<html xmlns:prefix="http://www.w3.org/1999/xhtml"> 

olarak öneki belirtebilir

<html xmlns="http://www.w3.org/1999/xhtml"> 

ile başlamak ve daha sonra

<prefix:head> 
    <prefix:title></prefix:title> 
</prefix:head> 

Benzer şekilde size

<svg xmlns="http://www.w3.org/2000/svg"> 
kullanabilirsiniz kullanacağız Sadeceyerine

Svg grafiğinizi eklerken. Sonra tüm svg etiketleri svgprefix önekiyle başlayacaktır. Ancak alt SVG düğümleriniz varsa, tanımlanacak bu xmlns özniteliğine de gereksinim duyarlar. Böyle bir durumda, öneki tanımlamak muhtemelen daha kolay olacaktır. D3.js's append() method belgelerine itibaren

+1

Downvoted; Bu bilginin doğru ve ilgili olmasına rağmen, OP'nin sorusu, XML işaretlemesi değil, D3.js'de belirli bir uygulamaya sahip bir JavaScript dizgisi ile ilgilidir. – Phrogz

+3

@Phrogz Saygılarımla katılmıyorum. Soru ortaya konmuştur: "svg nedir: svg?" ve tam olarak bu soruyu cevaplandırdım, bu cevabın kabul edilmesine neyin sebep olduğu. Op, D3 ve HTML kodunda gördüklerini, sadece D3'ü ima ettiğin gibi değil diyor. Bana öyle geliyor ki op, '' 'fonksiyonlarının bir tagname aldığının, sadece ne tür bir tagname'' svg'' s'ın SVG eklentisi olduğunu tahmin ettiğini bilmiyordu.Sorunun 'JavaScript' olarak etiketlenmediğinden, bunun bir JS sorunu olduğunu söyleyemezsiniz. – Imp

+0

Saygısız anlaşmazlığınıza saygı duyuyorum. :) Bana sözde kod. .append ("svg: svg") ile birlikte D3.js'nin bir sözünü açıkça bir kodlama sorusu yapar. Ancak, "HTML’de" görmekle ilgili iyi bir noktanız varsa, reddetmemizi kaldıracağım. – Phrogz

16

: SVG ad alanında bir "metin" öğesi oluşturmak için: "metin svg"

öğenin etiket adı gibi bir ad alanı öneki, sahip olabilir. Varsayılan olarak, D3 svg, xhtml, xlink, xml ve xmlns ad alanlarını destekler. Ek ad alanları, d3.ns.prefix'a eklenerek kaydedilebilir.

d3.js içinde ad önekleri Belgeniz dayanmayan olduğunu özellikle Not ama asıl ad URL'ye önek önceden tanımlanmış haritası.

Ad alanları ahlaki olarak "sin" vs matematiksel sinüs hesaplamada aynı adı (örneğin, "sin" ile iki özellik veya öğe içerebilir yolu (XHTML ancak HTML içerir) bir XML dokümanı olan çakışma olmadan. Bir XHTML belgesine <svg> öğesinin eklenmesi, bu SVG öğesi SVG namespace'da olmadığı sürece hiçbir anlamı yoktur.

Daha fazla bilgi için, Namespaces in XML'u okuyun.

+5

Sadece kayıt için ad 23, 2011'den beri d3'te isteğe bağlı. – Biovisualize