首頁 >web前端 >js教程 >布爾教育燕十八Ajax徹底研究影片資料分享

布爾教育燕十八Ajax徹底研究影片資料分享

巴扎黑
巴扎黑原創
2017-08-30 15:41:481171瀏覽

AJAX即「Asynchronous Javascript And XML」(非同步JavaScript和XML),指一種建立互動式網頁應用程式的網頁開發技術。

AJAX = 非同步 JavaScript和XML(標準通用標記語言的子集)。

AJAX 是一種用於建立快速動態網頁的技術。

AJAX 是一種在無需重新載入整個網頁的情況下,能夠更新部分網頁的技術。

透過在後台與伺服器進行少量資料交換,AJAX 可以使網頁實現非同步更新。這意味著可以在不重新載入整個網頁的情況下,對網頁的某個部分進行更新。

傳統的網頁(不使用 AJAX)如果需要更新內容,必須重載整個網頁頁面。

《布爾教育燕十八Ajax徹底研究影片教學》由淺入深,循序漸進的介紹了Ajax的相關概念、原理、實現方式和應用方法,包含HTTP請求的概念、PHP的簡單語法、 JSON資料格式、Ajax的原生和jQuery實作、跨網域、檔案上傳等知識點。

布爾教育燕十八Ajax徹底研究影片資料分享

影片播放位址:http://www.php.cn/course/231.html

ajax困難分析:

讓我們透過一個簡單的例子來認識這個問題。假設你要建立一個樹狀結構的公告欄系統(BBS),它可以根據用戶請求與伺服器進行交互,動態加載每篇文章的信息,而不是一次性從伺服器載入所有文章資訊。每篇文章有四個相關屬性:系統中可以作為唯一識別的ID、發文者姓名、文章內容以及包含其所有子文章ID的陣列資訊。首先假定有一個名為getArticle()的函數可以載入一篇文章資訊。此函數接收的參數是要載入文章的ID,透過它可從伺服器取得文章資訊。它傳回的物件包含與文章相關的四個屬性:id,name,content和children。例程如下:

function ( id ) {
     var a = getArticle(id);
     document.writeln(a.name + "
" + a.content);
 }

然而你或許會注意到,重複用同一個文章ID呼叫此函數,需要與伺服器之間進行反覆且無益的通訊。想要解決這個問題,可以考慮使用函數 getArticleWithCache(),它相當於一個有快取能力的getArticle()。在這個例子中,getArticle()傳回的資料只是作為一個全域變數被保存下來:

var cache = {};
 function getArticleWithCache ( id ) {
     if ( !cache[id] ) {
         cache[id] = getArticle(id);
     }
     return cache[id];
 }

現在已將讀入的文章快取起來,讓我們再來考慮一下函數backgroundLoad(),它應用我們上面提到的快取機制載入所有文章資訊。其用途是,當讀者在閱讀某篇文章時,從後台預先載入它所有子文章。因為文章資料是樹狀結構的,所以很容易寫一個遞歸的演算法來遍歷樹並且載入所有的文章:

function backgroundLoad ( ids ) {
     for ( var i=0; i < ids.length; i++ ) {
         var a = getArticleWithCache(ids[i]);
         backgroundLoad(a.children);
     }
 }

backgroundLoad ()函數接收一個ID數組作為參數,然後透過每個ID調用前面定義過的getArticldWithCache()方法,這樣就把每個ID對應的文章快取起來。之後再透過已載入文章的子文章ID數組遞歸呼叫backgroundLoad()方法,如此整條文章樹就被快取起來。

以上是布爾教育燕十八Ajax徹底研究影片資料分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn