AJAX相關名詞

XmlHttp是什麼

最通用的定義爲:XmlHttp是一套能夠在Javascript、VbScript、Jscript等腳本語言中經過http協議傳送或從接收XML及其餘數據的一套API。XmlHttp最大的用處是能夠更新網頁的部份內容而不須要刷新整個頁面。
來自MSDN的解釋:XmlHttp提供客戶端同http服務器通信的協議。客戶端能夠經過XmlHttp對象(MSXML2.XMLHTTP.3.0)向http服務器發送請求並使用微軟XML文檔對象模型Microsoft® XML Document Object Model (DOM)處理迴應。
如今的絕對多數瀏覽器都增長了對XmlHttp的支持,IE中使用ActiveXObject方式建立XmlHttp對象,其餘瀏覽器如:Firefox、Opera等經過window.XMLHttpRequest來建立xmlhttp對象。
 
XMLHTTPRequest簡介
Ajax的一個最大的特色是無需刷新頁面即可向服務器傳輸或讀寫數據(又稱無刷新更新頁面),這一特色主要得益於XMLHTTP組件XMLHTTPRequest對象。這樣就能夠向再發桌面應用程序只同服務器進行數據層面的交換,而不用每次都刷新界面也不用每次將數據處理的工做提交給服務器來作,這樣即減輕了服務器的負擔又加快了響應速度、縮短了用戶等候時間。
  最先應用XMLHTTP的是微軟,IE(IE5以上)經過容許開發人員在Web頁面內部使用XMLHTTP ActiveX組件擴展自身的功能,開發人員能夠不用從當前的Web頁面導航而直接傳輸數據到服務器上或者從服務器取數據。這個功能是很重要的,由於它幫助減小了無狀態鏈接的痛苦,它還能夠排除下載冗餘HTML的須要,從而提升進程的速度。Mozilla(Mozilla1.0以上及NetScape7以上)作出的迴應是建立它本身的繼承XML代理類:XMLHttpRequest類。Konqueror (和Safari v1.2,一樣也是基於KHTML的瀏覽器)也支持XMLHttpRequest對象,而Opera也將在其v7.6x+之後的版本中支持XMLHttpRequest對象。對於大多數狀況,XMLHttpRequest對象和XMLHTTP組件很類似,方法和屬性也相似,只是有一小部分屬性不支持。
什麼是DOM
DOM是Document Object Model文檔對象模型的縮寫。根據W3C DOM規範( [url]http://www.w3.org/DOM/[/url] ),DOM是一種與瀏覽器,平臺,語言的接口,使得你能夠訪問頁面其餘的標準組件。簡單理解,DOM解決了Netscaped的Javascript和Microsoft的Jscript之間的衝突,給予web設計師和開發者一個標準的方法,讓他們來訪問他們站點中的數據、腳本和表現層對像。DOM是以層次結構組織的節點或信息片段的集合。這個層次結構容許開發人員在樹中導航儀尋找特定信息。分析該結構一般須要加載整個文檔和構造層次結構,而後才能作任何工做。因爲它是基於信息層次的,於是 DOM 被認爲是基於樹或基於對象的。對於特別大的文檔,解析和加載整個文檔可能很慢且很耗資源,所以使用其餘手段來處理這樣的數據會更好。這些基於事件的模型,好比 Simple API for XML(SAX),適用於處理數據流,即隨着數據的流動而依次處理數據。基於事件的 API 消除了在內存中構造樹的須要,可是卻不容許開發人員實際更改原始文檔中的數據。另外一方面,DOM 還提供了一個 API,容許開發人員添加、編輯、移動或刪除樹中任意位置的節點,從而建立一個引用程序。解析器是一個軟件應用程序,設計用於分析文檔(這裏是指 XML 文件),以及作一些特定於該信息的事情。在諸如 SAX 這樣基於事件的 API 中,解析器將向某種監聽器發送事件。在諸如 DOM 這樣基於樹的 API 中,解析器將在內存中構造一顆數據樹。做爲 API 的 DOM從 DOM Level 1 開始,DOM API 包含了一些接口,用於表示可從 XML 文檔中找到的全部不一樣類型的信息。它還包含使用這些對象所必需的方法和屬性。Level 1 包括對 XML 1.0 和 HTML 的支持,每一個 HTML 元素被表示爲一個接口。它包括用於添加、編輯、移動和讀取節點中包含的信息的方法,等等。然而,它沒有包括對 XML 名稱空間(XML Namespace)的支持,XML 名稱空間提供分割文檔中的信息的能力。DOM Level 2 添加了名稱空間支持。Level 2 擴展了 Level 1,容許開發人員檢測和使用可能適用於某個節點的名稱空間信息。Level 2 還增長了幾個新的模塊,以支持級聯樣式表、事件和加強的樹操做。當前正處於定稿階段的 DOM Level 3 包括對建立 Document 對象(之前的版本將這個任務留給實現,使得建立通用應用程序很困難)的更好支持、加強的名稱空間支持,以及用來處理文檔加載和保存、驗證以及 XPath 的新模塊;XPath 是在 XSL 轉換(XSL Transformation)以及其餘 XML 技術中用來選擇節點的手段。DOM 的模塊化意味着做爲開發人員,您必須知道本身但願使用的特性是否受正在使用的 DOM 實現所支持。肯定特性可用性DOM 推薦標準的模塊性質容許實現者挑選將要包括到產品中的部分,於是在使用某個特定的特性以前,首先肯定該特性是否可用多是必要的。本教程僅使用 DOM Level 2 Core API,不過在着手您本身的項目時,瞭解如何可以檢測特性是有所幫助的。DOM 中定義的接口之一就是 DOMImplementation。經過使用 hasFeature() 方法,您能夠肯定某個特定的特性是否受支持。DOM Level 2 中不存在建立DOMImplementation 的標準方法,不過下面的代碼將展現如何使用 hasFeature() 來肯定 DOM Level 2 樣式表模塊在某個 Java 應用程序中是否受支持。
相關文章
相關標籤/搜索