AJAX入門--概述XMLHttpRequest_AJAX教程
推薦:淺析AJAX中JavaScript類的三種成員實現(xiàn)類的公有成員 前面定義的任何類成員都屬于公有成員的范疇,該類的任何實例都對外公開這些屬性和方法。 實現(xiàn)類的私有成員 私有成員即在類的內(nèi)部實現(xiàn)中可以共享的成員,不對外公開。JavaScript中并沒有特殊的機制來定義私有成員,但可以用一些技巧來實現(xiàn)這
在使用XMLHttpRequest對象發(fā)送請求和處理響應之前,必須先用JavaScript創(chuàng)建一個XMLHttpRequest對象。由于XMLHttpRequest不是一個W3C標準,所以可以采用多種方法使用JavaScript來創(chuàng)建XMLHttpRequest的實例。Internet Explorer把XMLHttpRequest實現(xiàn)為一個ActiveX對象,其他瀏覽器(如Firefox、Safari和Opera)把它實現(xiàn)為一個本地JavaScript對象。由于存在這些差別,JavaScript代碼中必須包含有關的邏輯,從而使用ActiveX技術(shù)或者使用本地JavaScript對象技術(shù)來創(chuàng)建XMLHttpRequest的一個實例。很多人可能還記得從前的那段日子,那時不同瀏覽器上的JavaScript和DOM實現(xiàn)簡直千差萬別,聽了上面這段話之后,這些人可能又會不寒而栗。幸運的是,在這里為了明確該如何創(chuàng)建XMLHttpRequest對象的實例,并不需要那么詳細地編寫代碼來區(qū)別瀏覽器類型。你要做的只是檢查瀏覽器是否提供對ActiveX對象的支持。如果瀏覽器支持ActiveX對象,就可以使用ActiveX來創(chuàng)建XMLHttpRequest對象。否則,就要使用本地JavaScript對象技術(shù)來創(chuàng)建。代碼清單2-1展示了編寫跨瀏覽器的JavaScript代碼來創(chuàng)建XMLHttpRequest對象實例是多么簡單。
代碼清單2-1 創(chuàng)建XMLHttpRequest對象的一個實例
| var xmlHttp; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } |
可以看到,創(chuàng)建XMLHttpRequest對象相當容易。首先,要創(chuàng)建一個全局作用域變量xmlHttp來保存這個對象的引用。createXMLHttpRequest方法完成創(chuàng)建XMLHttpRequest實例的具體工作。這個方法中只有簡單的分支邏輯(選擇邏輯)來確定如何創(chuàng)建對象。對window.ActiveXObject的調(diào)用會返回一個對象,也可能返回null,if語句會把調(diào)用返回的結(jié)果看作是true或false(如果返回對象則為true,返回null則為false),以此指示瀏覽器是否支持ActiveX控件,相應地得知瀏覽器是不是Internet Explorer。如果確實是,則通過實例化ActiveXObject的一個新實例來創(chuàng)建XMLHttpRequest對象,并傳入一個串指示要創(chuàng)建何種類型的ActiveX對象。在這個例子中,為構(gòu)造函數(shù)提供的字符串是Microsoft.XMLHTTP,這說明你想創(chuàng)建XMLHttpRequest的一個實例。如果window.ActiveXObject調(diào)用失�。ǚ祷豱ull),JavaScript就會轉(zhuǎn)到else語句分支,確定瀏覽器是否把XMLHttpRequest實現(xiàn)為一個本地JavaScript對象。如果存在window.XMLHttpRequest,就會創(chuàng)建XMLHttpRequest的一個實例。
由于JavaScript具有動態(tài)類型特性,而且XMLHttpRequest在不同瀏覽器上的實現(xiàn)是兼容的,所以可以用同樣的方式訪問XMLHttpRequest實例的屬性和方法,而不論這個實例創(chuàng)建的方法是什么。這就大大簡化了開發(fā)過程,而且在JavaScript中也不必編寫特定于瀏覽器的邏輯。
分享:揭秘AJAX將成為移動Web2.0時代首選開發(fā)平臺一、 引言 最近,Opera宣布通過他們的瀏覽器把AJAX技術(shù)應用于移動設備開發(fā)中�?紤]到Opera瀏覽器在目前瀏覽器市場(特別是在移動瀏覽器市場)的流行性,我們可以預計這一宣布對于整個瀏覽器市場必然會產(chǎn)生重要影響。從加入到移動服務開發(fā)市場幾年的經(jīng)驗來看,我
- Ajax中瀏覽器的緩存問題解決方法
- AJAX和WebService實現(xiàn)省市縣三級聯(lián)動具體代碼
- ajax 登錄功能簡單實現(xiàn)(未連接數(shù)據(jù)庫)
- AJAX和WebService實現(xiàn)郵箱驗證(無刷新驗證郵件地址是否合法)
- AJAX和三層架構(gòu)實現(xiàn)分頁功能具體思路及代碼
- 使用AJAX返回WebService里的集合具體實現(xiàn)
- AJAX獲取服務器當前時間及時間格式輸出處理
- ajax傳遞多個參數(shù)具體實現(xiàn)
- ajax傳遞一個參數(shù)具體實現(xiàn)
- 滑輪滾動到頁面底部ajax加載數(shù)據(jù)配合jsonp實現(xiàn)探討
- jQery ajax——load()方法示例介紹
- jQuery+Ajax實現(xiàn)表格數(shù)據(jù)不同列標題排序(為表格注入活力)
- 相關鏈接:
- 教程說明:
AJAX教程-AJAX入門--概述XMLHttpRequest
。