2016-12-05 41 views
-2

我添加async="async"屬性給我的腳本代碼,您在圖像的Javascript異步錯誤

見例如:

<script async="async" type="text/javascript" src="js/jquery.min.js"></script> 
<script async="async" type="text/javascript" src="js/bootstrap.min.js"></script> 
<script async="async" type="text/javascript" src="js/plugin.js"></script> 
<script async="async" type="text/javascript" src="js/main.js"></script> 

enter image description here

和後添加javascript errors notifier插件給了我這個錯誤

enter image description here

和我的錯誤代碼行

enter image description here

$(function() { 
$(".lazy").lazy(); 
}); 

我怎麼能現在

+1

您是否試過這個? – GraveyardQueen

+4

使用'async',您的腳本現在以隨機順序加載。你的腳本試圖運行一些尚未加載的函數。所以**刪除異步**回來,並享受 – ixpl0

+2

課程:不使用你不完全理解的功能 –

回答

2
  1. 修復它使用defer推遲腳本的加載。
  2. 請勿使用async="async":這意味着您可以在以後加載並執行它。較小的腳本將首先加載並執行。
  3. 您不需要使用type="text/javascript"。 JavaScript贏了。

所以,你的代碼就變成了:

<script src="js/jquery.min.js" defer></script> 
<script src="js/bootstrap.min.js" defer></script> 
<script src="js/plugin.js" defer></script> 
<script src="js/main.js" defer></script> 

這應該解決您的問題。


參考MDN:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script

異步

設置這個布爾值,表明瀏覽器應該 如果可能的話,異步執行腳本。它有 內嵌腳本沒有影響(即腳本沒有src屬性)

推遲

此布爾屬性被設置爲指示腳本意味着以後要執行的瀏覽器文檔已被解析,但在發佈DOMContentLoaded之前。 defer屬性不應該用於沒有src屬性的腳本。

+0

謝謝,但現在圖像不出現我想jQuery的懶惰功能不起作用 –

+0

我認爲這是一個不同的問題:爲什麼懶惰不工作?我建議花半個小時在懶惰的jQuery網站上閱讀並看看一些例子。我相信你會得到它。 – 2016-12-05 09:17:24

+0

非常感謝,我還有另外一個問題,是否有任何控制語句在js中來控制它?我的意思是如果加載做到這一點.. –