1. 程式人生 > >javascript 載入不同步的解決方法

javascript 載入不同步的解決方法

當js的定義是非同步載入時(如是放在iframe),有可能呼叫的函式執行比函式定義的程式碼要快,此時會出現函式未定義的錯誤.

解決方法:

1.如果可以修改載入進來的js檔案,可用某個變數名(例如其檔名)定義為全域性函式,

  呼叫此檔案的函式時,判斷此變數名是否未定義即可知此檔案是否被載入(把變數定義放在檔案末,則可知此檔案是否載入完成)

2.若不可以修改載入進來的js檔案,則在呼叫其函式前,判斷此函式是否已定義,否則進入延遲呼叫.

實戰經驗:

  場景:要等頁面中某個iframe中的js載入完成,才能執行checkSave函式

 程式碼: