consideran este SVG/XML y JavaScript:manera correcta para obtener el valor del atributo de declaración de espacio de nombres
<svg id="foo" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<use id="bar" xlink:href="#whee" />
</svg>
...
var foo = document.getElementById('foo');
var bar = document.getElementById('bar');
var xlnk = foo...; // What is correct here?
var link = bar.getAttributeNS(xlnk,'href');
Está claro que puede hacer este trabajo con xlnk = "http://www.w3.org/1999/xlink"
; mi pregunta, sin embargo, es ¿cuál es la forma correcta de obtener dinámicamente el atributo xmlns:xlink
en el elemento svg
?
El siguiente código funciona en Safari/Chrome/FF, pero, ¿es realmente válido?
var xlnk = foo.getAttribute('xmlns:xlink');
El código siguiente devuelve una cadena vacía en esos navegadores:
var xlnk = foo.getAttributeNS("http://www.w3.org/2000/svg", "xlink");