diff --git a/lib/OpenLayers.js b/lib/OpenLayers.js index 91714594dd..6f83eaef1f 100644 --- a/lib/OpenLayers.js +++ b/lib/OpenLayers.js @@ -179,15 +179,16 @@ "OpenLayers/Control/EditingToolbar.js" ); // etc. - - - var allScriptTags = ""; - var host = OpenLayers._getScriptLocation() + "lib/"; - + var agent = navigator.userAgent; + var docWrite = (agent.match("MSIE") || agent.match("Safari")); + if(docWrite) { + var allScriptTags = new Array(jsfiles.length); + } + var host = OpenLayers._getScriptLocation() + "lib/"; for (var i = 0; i < jsfiles.length; i++) { - if (/MSIE/.test(navigator.userAgent) || /Safari/.test(navigator.userAgent)) { - var currentScriptTag = ""; - allScriptTags += currentScriptTag; + if (docWrite) { + allScriptTags[i] = ""; } else { var s = document.createElement("script"); s.src = host + jsfiles[i]; @@ -197,8 +198,8 @@ h.appendChild(s); } } - if (allScriptTags) { - document.write(allScriptTags); + if (docWrite) { + document.write(allScriptTags.join("")); } } })();