2009-11-29 17 views
6

Lo que intenté es este¿Cómo vincular desde SVG?

<a xlink:target="http://ponyoverflow.com"> 
    <text class="text" x="20" y="718" text-anchor="start">Mail Order Ponies</text> 
</a> 

y variaciones con href y type="simple".

Aparece el texto del enlace, pero no se puede hacer clic en él. Probé Firefox 3.5.5, Chromium, Inkscape y GNOME Image Viewer.

¿Hay algún problema con la sintaxis y si no hay alguna aplicación que admita enlaces en SVG?

+0

Según tengo entendido, xlink: target es lo mismo que HTMLs @target, como el infame target = "_ blank". La solución de Erik funciona, sin embargo, en cualquier caso, he visto (ya que es la manera canónica de hacerlo ;-)) – Boldewyn

Respuesta

14

Prueba esto:

<a xlink:href="http://ponyoverflow.com"> 
    <text class="text" x="20" y="718" text-anchor="start">Mail Order Ponies</text> 
</a> 

... y asegurarse de que tiene un atributo xmlns:xlink="http://www.w3.org/1999/xlink" en el elemento raíz SVG.

+0

Gracias Eric, funciona como sugirió. Probé la versión * href *, pero solo cuando se genera desde javascript, que aún no funciona. Verifiqué que el javascript produce exactamente el resultado anterior (guardado el documento con) firefox. Mi solución por ahora es codificar el vínculo y moverlo a la posición adecuada de forma dinámica. Si tengo una idea de por qué no se puede hacer clic en el enlace generado, me gustaría saberlo. –

+0

Consulte aquí: http://www.w3.org/Graphics/SVG/IG/resources/svgprimer.html#xlink –

+0

@Erik Hola Erik, estoy trabajando con d3 y me gustaría saber cómo configuro el atributo ' xmlns: xlink' en svg. Aquí está mi pregunta 'http: // stackoverflow.com/questions/19987032/adding-attribute-xmlnsxlink-to-svg-using-d3' – Kraken