378day(js時間線,二級選單練習)

2021-08-29 02:55:37 字數 877 閱讀 2790

《2023年10月15日》【連續378天】

內容:1、建立document物件,開始解析web頁面;此階段document.readystate = 'loading';

2、遇到link外部css,建立建立執行緒載入,並繼續解析文件;

3、遇到script外部js,並且沒有設定async、defer,瀏覽器載入並阻塞,等待js載入完成並執行該指令碼,繼續解析文件;

4、遇到script外部js,並且設定有async、defer,瀏覽器建立執行緒,並繼續解析文件;

5、遇到img等,先正常解析dom結構,然後瀏覽器非同步載入src,並繼續解析文件;

6、當文件解析完成,document.readystate = 'interactive';

7、文件解析完成後,所有設定有defer的指令碼會按照順序執行。(注意defer與async的區別,可見另一篇部落格);

8、document物件觸發domcontentloaded事件,這也標誌著程式執行從同步指令碼執行階段,轉化為事件驅動階段;

9、當所有async的指令碼載入完成並執行後,img等載入完成後,document.readystste = 'complete',window物件觸發load事件;

10、從此,以非同步響應方式處理使用者輸入,網路事件等;

二級選單:

寫的太繁瑣了。。。

js載入時間線

建立document物件,開始解析web頁面。解析html元素和他們的文字內容後新增element物件和text節點到文件中。這個階段 document.readystate loading 遇到link外部css,建立執行緒載入,並繼續解析文件。遇到script外部js,並且沒有設定async d...

PostgreSQL 時間線解析

時間線 timeline 是pg乙個很有特色的概念,在備份恢復方面的文件裡面時有出現。但針對這個概念的詳細解釋卻很少,也讓人不太好理解。我們在此仔細解析一下。為了理解引入時間線的背景,我們來分析一下,如果沒有時間線,會有什麼問題?先舉個將資料庫恢復到以前時間點的例子。假設在乙個資料庫的執行過程中,d...

JS載入時間線

js載入時間線,依據js出生的那一刻起,記錄了一系列瀏覽器按照順序做的事 就是乙個執行順序 js時間線步驟 建立document物件 文件解析完 文件解析完載入完執行完 1 建立document物件,開始解析web頁面,解析html元素和他們的文字內容後新增element物件和text節點到文件中,...