動態加載JS文件,並根據JS文件的加載狀態來執行自己的回調函數


動態加載JS文件,並根據JS文件的加載狀態來執行自己的回調函數,

在很多場景下,我們需要在動態加載JS文件的時候,根據加載的狀態來進行后續的操作,需要在JS加載成功后,執行另一方法,這個方法是依托在加載的JS文件上的(調用了這JS里面的方法等等),此時就需要將這個方法作為JS加載后的回調函數進行執行

具體實例:

JS 代碼如下

function loadJs(loadUrl,callMyFun,argObj){
				var loadScript=document.createElement('script');
				loadScript.setAttribute("type","text/javascript");
				loadScript.setAttribute('src',loadUrl);
				console.log(loadUrl)
				document.getElementsByTagName("head")[0].appendChild(loadScript);
				//判斷服務器
				if(navigator.userAgent.indexOf("IE") >=0){
					//IE下的事件
					loadScript.onreadystatechange=function(){
						if(loadScript && (loadScript.readyState == "loaded" || loadScript.readyState == "complete")){
							//表示加載成功
							loadScript.onreadystatechange=null;
							callMyFun()//執行回調
						}
					}
				}
				else{
					loadScript.onload=function(){
						loadScript.onload=null;
						callMyFun();
					}
				}
				console.log(argObj);
			}
			function loadJsBtn(){
				//如需傳參
				var argObj={};
				loadJs("js/jqueryww.js",callMyFun,argObj);
			}
			function callMyFun(){
				alert("執行我的回調啊")
			}

  

HTML代碼

<button onclick="loadJsBtn()">加載JS文件</button>

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM