最近遇到一個問題,就是佈景的災害示警區塊外連js解析拖慢站其他JS解析的問題,災害示警區塊是讀取https://alerts.ncdr.nat.gov.tw網站的JS後API橋接顯示在網站容器中的內容,如果遇到https://alerts.ncdr.nat.gov.tw網站流量塞爆或是或是外連頻寬不穩,就會發生因為瀏覽器解析JS一直在等待https://alerts.ncdr.nat.gov.tw網站的資料回傳,所以其他的JS解析都被卡住了,然後像是圖片播放器JS功能突然失效,JS動畫突然要很久才會播放,反正跟JS有關的解析都會因為一個外部JS讀取LOG全部都卡住。 上網估狗了一下找到一個簡單的解決方法分享給大家!! 只需要在外連的script標籤中加上defer="defer"延遲加載屬性期可,這樣被加上屬性的script就會等其他沒有屬性的script全部腳本解析完畢後才開始下載解析 <script defer="defer" type="text/javascript" src="https://alerts.ncdr.nat.gov.tw/temp/StaticFiles/Immediately/<{$alertsncdr}>"></script> <script> 即使https://alerts.ncdr.nat.gov.tw網站頻寬嚴重塞車也不會拖慢網站的其他JS解析運作,有需要的朋友參考看看! 教學撰寫: 徐嘉裕 Neil hsu