Ajax定義淺要剖析

2021-10-05 03:49:29 字數 1162 閱讀 9266

首先我們來看一看ajax的定義:

個人理解:

觸發某個事件->向服務端發起請求->返回響應(資料)->區域性更新

假設,目前我們在瀏覽器上看到的頁面,某些按鈕(事件),是繫結了ajax請求的。

ajax的核心:

xmlhttprequest 物件

初始化xmlhttprequest物件-->建立物件例項(通過該物件傳送請求)

open()方法指定載入資源

send()方法傳送請求

伺服器返回響應(使用onreadystatechange事件監聽伺服器)

用容器元素載入響應內容(使用dom元素載入伺服器放回的內容)

那為什麼xmlhttprequest物件可以建立與服務端的通訊呢?這裡需要理解兩個東西

1.瀏覽器到底是什麼?

接下來我們看看網路osi模型:

瀏覽器是乙個應用程式,在osi模型當中,屬於的是應用層上的東西。

注:摘自《

網路是怎樣連線的》

3.瀏覽器本質上是乙個渲染引擎(處理html+css+樣式計算+布局+繪製...)+js解析器+...

基於上述三個概念,我們回到xmlhttprequest 上來。

當瀏覽器拿到服務端的資源過後(html、css、js...)過後,瀏覽器對資源進行解析(dom構造+布局+繪製頁面)。當某個繫結了ajax的事件被觸發時,初始化xmlhttprequest ,這個時候對應的物件,擁有開啟與socket庫建立連線的方式(「send」方法),從而與協議棧產生通訊,以達到網路資料傳輸的目的。

綜上,我們回到ajax定義上來:

更新部分網頁原因:

js利用html當前的dom構造,利用服務端返回的資料,對指定的dom節點進行資料更新。

深入淺出剖析 OpenCV 視覺處理

隨著計算機技術以及電子技術的迅猛發展,影象作為人類感知世界的最主要 是人類獲取 表達和傳遞資訊的重要手段,使用計算機進行影象處理的數字影象處理技術迅速發展。opencv 開源計算機視覺庫成為了在影象處理和計算機視覺方面的熱門技術。opencv 的全稱是 open source computer vi...

淺拷貝與深拷貝定義

深拷貝淺拷貝 對乙個物件進行clone生成新的物件,新的物件要開闢一塊新的記憶體來儲存,新物件中的基本型別屬性和string型別屬性都會開闢新的空間儲存,但是如果是引用型別的屬性,那這個引用型別的屬性還是指向原物件的引用屬性記憶體,當對新的物件或原物件的引用屬性做出改變的時候,兩方的引用屬性型別的值...

ajax自定義控制項安裝

1.安裝aspajaxextsetup.msi 2.安裝 aspajaxctp.msi3.在 net 工具欄中新增自定義控制項 新建選項卡 controltoolkit 右擊工具箱中的選項卡 選擇 選擇項 在 net framework 元件中選擇 瀏覽 選相應的 dll檔案 在 ajaxcontr...