使用javascript/ajax函数获取多个SVG文件内容

使用javascript/ajax函数获取多个SVG文件内容,javascript,ajax,svg,Javascript,Ajax,Svg,我有多个要异步加载的SVG文件。我编写了以下可以调用的函数: function getSVG(fileName){ getSVG = new XMLHttpRequest(); getSVG.open('GET','assets/svg/'+fileName+'.svg',false); getSVG.send(); return getSVG.responseXML.documentElement; } 现在我可以像这样加载内容: var baseSVG = getSVG('

我有多个要异步加载的SVG文件。我编写了以下可以调用的函数:

function getSVG(fileName){
  getSVG = new XMLHttpRequest();
  getSVG.open('GET','assets/svg/'+fileName+'.svg',false);
  getSVG.send();
  return getSVG.responseXML.documentElement;
}
现在我可以像这样加载内容:

var baseSVG = getSVG('base');
document.getElementById('canvas').appendChild(baseSVG);
这很有效,但当我第二次尝试调用它时,它不起作用。例如:

var midSVG = getSVG('mid');
document.getElementById('canvas').appendChild(midSVG);
这次我得到以下错误:

'Uncaught TypeError: Property 'getSVG' of object [object object] is not a function

我不是javascript和ajax方面的专家,所以不确定这是怎么回事。

函数getSVG(fileName){//啊,是的,getSVG变量声明之前的var?现在似乎起作用了。你忘了把它放在你的答案中吗?我故意把它漏掉了,这样评论才有意义,但只要你明白
var
是罪魁祸首,我就可以编辑它
function getSVG(fileName){       // <- create a function in the global namespace called getSVG
  var getSVG = new XMLHttpRequest(); // <- overwrite that function with a new XMLHttpRequest object
  ...
}