Я успешно загружаю через AJAX некоторый svg из внешнего файла:
$("#svg").load(svgUrl + " svg", function() {
// do stuff
});
Мой HTML-код выглядит так:
<div id="svg" ...>
<svg ...>
...
</svg>
</div>
Я могу увидеть графику просто отлично. Теперь я хочу добавить несколько дополнительных элементов svg в загруженный файл svg. Я изменил свой сценарий на:
$("#svg").load(svgUrl + " svg", function() {
$("svg").append("<g id='compass'></g>");
// do stuff
});
По некоторым причинам добавленный элемент отображается как скрытый в firebug, и независимо от того, какой xml я помещаю в него, я не вижу его на своей веб-странице.
Обновление:
Благодаря echo-flow Мне удалось добавить в свой SVG. Теперь, если я попытаюсь загрузить свой компас svg из другого XML-файла, он не появится в моей DOM. На данный момент мой код выглядит так:
$("#svg").load(obj.svgUrl + " svg", function() {
var svgns = "http://www.w3.org/2000/svg";
var g = document.createElementNS(svgns,"g");
g.setAttributeNS(null,'id','compass');
$("svg").append(g);
$("#compass").load("files/svg/compass.xml");
});
Если я смотрю в консоль в firebug, я вижу, что результат запроса AJAX для разметки компаса успешен, но пуст.