У меня есть функция, которая загружает SVG Dom из файла. В настоящее время он создает элемент embed
и помещает его в документ, а затем ожидает его загрузки с событием onload
. Однако, по-видимому, onload
не вызывается для элементов, помещенных в документ после загрузки страницы. Есть ли способ, которым я могу зарегистрировать функцию для вызова после завершения загрузки элемента?
Вот что у меня есть:
function loadSVG(svgFilename, callback)
{
// Loads data from an svg file
// loadSVG(
// svgFilename, // The path to the file to load
// callback // The function to be called with the
// // SVG document once it loads.
// );
var embed = document.createElement("embed");
embed.src = svgFilename;
embed.onload = function() // Doesn't get called because page has already loaded
{
var doc = embed.getSVGDocument();
document.getElementById("SVGLoader").removeChild(embed);
callback(doc);
};
document.getElementById("SVGLoader").appendChild(embed);
}