图片及js的预加载
loadImage : function (url, dataObj, callback, errorCallback) {var self = this;var img = new Image(); //創建一個Image對象,實現圖片的預下載img.src = url;if(img.complete) { // 如果圖片已經存在于瀏覽器緩存,直接調用回調函數
callback.call(img,dataObj);return; // 直接返回,不用再處理onload事件
}img.onload = function () { //圖片下載完畢時異步調用callback函數。callback.call(img,dataObj);//將回調函數的this替換為Image對象
};if(typeof errorCallback === 'function'){img.onerror = function () {errorCallback.call(img,dataObj);};}}
?
?
?
function loadScript(url, callback){var script = document.createElement ("script")script.type = "text/javascript";if (script.readyState){ //IEscript.onreadystatechange = function(){if (script.readyState == "loaded" || script.readyState == "complete"){script.onreadystatechange = null;callback();}};} else { //Othersscript.onload = function(){callback();};}script.src = url;document.getElementsByTagName_r("head")[0].appendChild(script);//即插即執行 }?
?
你可以在頁面中動態加載很多JavaScript 文件,但要注意,瀏覽器不保證文件加載的順序(修正:加載應該是異步同時加載,執行順序是不確定的,很可能誰先加載完,先執行誰。)。所有主流瀏
覽器之中,只有Firefox 和Opera 保證腳本按照你指定的順序執行。其他瀏覽器將按照服務器返回它們的次
序下載并運行不同的代碼文件。你可以將下載操作串聯在一起以保證他們的次序,如下:
?
javascript 動態加載按順序加載運行 js
轉載于:https://www.cnblogs.com/darr/p/5049040.html
總結
- 上一篇: DataSet用法详细
- 下一篇: 操作html标签之找到标签(续)