Lecz nic sie nie dzieje. Co powinienem dodac/zmodyfikowac?
var svgns = "http://www.w3.org/2000/svg"; var xlinkns = "http://www.w3.org/1999/xlink"; var ATTR_MAP = { "className": "class", "svgHref": "href" } var NS_MAP = { "svgHref": xlinkns }; function makeSVG(tag, attributes) { var elem = document.createElementNS(svgns, tag); for (var attribute in attributes) { var name = (attribute in ATTR_MAP ? ATTR_MAP[attribute] : attribute); var value = attributes[attribute]; if (attribute in NS_MAP) elem.setAttributeNS(NS_MAP[attribute], name, value); else elem.setAttribute(name, value); } return elem; }
var text = makeSVG("text", {id: "text1", x: "60", y: "60"});
jak zrobiłem tak to się napis pokazał ale ... nie da się go kliknąć, co dziwne gdy wejdziesz w źródło strony, skopiujesz kod linku z napisem (który został wygenerowany przez javascript) czyli to:
var a = makeSVG("a", {id: "link", x: "70", y: "60", "xlink:href":"http://google.pl", target: "_blank"}); var text = makeSVG("text", {id: "text", fill:"yellow", x: "70", y: "60"}); text.appendChild(document.createTextNode("link")); a.appendChild(text); document.getElementsByTagName("svg")[0].appendChild(a);
i wkleisz do dokumentu to link działa ... Oo