瀏覽器的核心是瀏覽器引擎(Browser Engine):IE使用的是Trident、Firfox使用的是Gecko、Safari和Chrome使用的是Webkit。不同的瀏覽器引擎對W3C的規范支持不盡相同,在具體功能的實現上也不完全一致。
本文主要描述瀏覽器從輸入URL地址開始到頁面完全可用的大致過程。
1、連接URL所在服務器
用戶在地址欄輸入一個URL,並單擊GO按鈕要求瀏覽器打開該URL后,瀏覽器做的第一件事情是尋找該URL所在的服務器。
通過向DNS服務器查詢,瀏覽器可以獲得該URL所在網站的IP地址。然后,瀏覽器向該地址發起連接請求,建立服務器的連接。
2、獲取頁面對應的HTML文檔
當連接建立后,瀏覽器向服務器發送HTTP請求,請求URL對應的HTML文檔。不管請求的URL是一個靜態的HTML文件,還是一個動態腳本(ASPX、PHP或JSP),服務器返回給瀏覽器的一定是一個HTML文檔。該HTML文檔就是瀏覽器需要呈現的頁面。
3、解析文檔並獲取所需要的資源
4、頁面上的JS文件與CSS文件
5、onload事件