我創建了一些函數(應該)將另一個文件加載到我的頁面(我正在創建一個庫,並且希望將所有js文件加載到一行中)。使用javascript將腳本加載到頁面
所以這是HTML文件的一部分:
<head>
<title>Example</title>
<script src="ENGINE/libs/jquery.js"></script>
<script src="ENGINE/load.js"></script>
<script src="EXAMPLE.js"></script>
</head>
而且load.js:
function loadJSfromFile(src) {
var h = document.getElementsByTagName('head').item(0);
var s = document.createElement("script");
//s.type = "text/javascript";
s.src = src;
h.appendChild(s);
};
loadJSfromFile("libs/canvasManager.js");
loadJSfromFile("libs/mainFunctions.js");
loadJSfromFile("libs/animations.js");
loadJSfromFile("libs/objects.js");
loadJSfromFile("libs/collisions.js");
的問題是:我收到錯誤,bacause在這個網站聲稱,從庫函數是另一個腳本未定義。這些文件是異步加載的嗎?如果是的話,如何停止加載頁面,直到圖書館將被加載?
任何你不使用'RequireJS'或'Head.JS'的理由?如果你想把它當做練習,那很好,但是這些庫已經解決了你的問題,等等。 – Amadan
要麼使用像asyncjs,requirejs或確保您等待其他腳本(script.onload,儘管這將使一個回調鏈的地獄) – Quad