在傳統(tǒng)的 JavaScript 編程中,假如您希望從服務(wù)器上的文件或數(shù)據(jù)庫中得到任何的信息,或者向服務(wù)器發(fā)送信息的話,就必須利用一個 HTML 表單向服務(wù)器 GET 或 POST 數(shù)據(jù)。而用戶則需要單擊“提交”按鈕來發(fā)送/獲取信息,等待服務(wù)器的響應,然后一張新的頁面會加載結(jié)果。
由于每當用戶提交輸入后服務(wù)器都會返回一張新的頁面,傳統(tǒng)的 web 應用程序變得運行緩慢,且越來越不友好。
通過利用 AJAX,您的 JavaScript 會通過 JavaScript 的 XMLHttpRequest 對象,直接與服務(wù)器來通信。
通過使用 HTTP 請求,web 頁可向服務(wù)器進行請求,并得到來自服務(wù)器的響應,而不加載頁面。用戶可以停留在同一個頁面,他或她不會注意到腳本在后臺請求過頁面,或向服務(wù)器發(fā)送過數(shù)據(jù)。
通過使用 XMLHttpRequest 對象,web 開發(fā)者可以做到在頁面已加載后從服務(wù)器更新頁面!
在 2005 年 AJAX 被 Google 推廣開來(Google Suggest)。
Google 建議使用 XMLHttpRequest 對象來創(chuàng)建一種動態(tài)性極強的 web 界面:當您開始在 Google 的搜索框中輸入查詢時,JavaScript 會向某個服務(wù)器發(fā)出這些字詞,然后服務(wù)器會返回一系列的搜索建議。
XMLHttpRequest 對象得到下列瀏覽器的支持:Internet Explorer 5.0+、Safari 1.2、Mozilla 1.0 / Firefox、Opera 8+ 以及 Netscape 7。