JS怎麼實現網頁載入的進度百分比??

來源:互聯網
上載者:User

回複內容:

不一定要非常精確的百分比,能在幾個關鍵點給出正確值,其他中間值用程式瞎編就行了在head裡內嵌script標籤,越靠前越好,一定要寫在所有外聯css、js檔案之前

頁面要載入多少個css、多少個js你肯定是知道的對不對~
而內聯的style和script載入時間基本可以忽略不計~
所以監聽檔案載入完成的百分比就可以粗略當成頁面載入的百分比了,比如一共10個檔案,第三個檔案載入完成了就設為30%

————css檢測:
css檢測載入完成最妥的方法就是寫一個預定的樣式,比如#link_style_onload_check{opacity:0.3;},放到css檔案的結尾;

然後建立一個dom,id設為link_style_onload_check(事先載入哪些樣式肯定是可以商定的),扔到body裡

寫一個輪詢,間隔5毫秒就可以,如果檢測到這個dom的opacity值為0.3,就證明樣式載入完成

————js檢測:
js也一樣,結尾為window或別的全域對象上掛一個約定的值,比如window.link_script_onload_check=true;
同樣建立輪詢,就可以檢測指令碼的完成(雖然用onload更直接一些...但是拿到script標籤的控制代碼是個麻煩事)

————html檢測:
html載入很快的,直接監聽document.body的onload事件就可以;也可以監聽一些主要的dom,最好通過id否則效能太爛了,非要querySelector的話IE67就廢了

最後為防萬一,再綁個window的onload,完成後設為100%
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.