天天看點

PHP + JavaScript + Ajax 實作無重新整理頁面加載效果

<a href="#%E6%95%B0%E6%8D%AE%E6%BA%90%E5%B7%A5%E5%8E%82">資料源工廠</a>

<a href="#json%E7%94%9F%E6%88%90%E6%96%B9%E5%BC%8F1">Json生成方式1</a>

<a href="#json%E7%94%9F%E6%88%90%E6%96%B9%E5%BC%8F2">Json生成方式2</a>

<a href="#%E6%95%B0%E6%8D%AE%E6%90%AC%E8%BF%90%E5%B7%A5">資料搬運工</a>

<a href="#%E6%95%B0%E6%8D%AE%E5%8A%A0%E5%B7%A5%E5%B8%88">資料加工師</a>

<a href="#%E8%BD%AC%E6%8D%A2%E7%B1%BB%E5%9E%8B">轉換類型</a>

<a href="#%E5%8A%A0%E5%B7%A5%E5%B1%95%E7%A4%BA">加工展示</a>

<a href="#%E7%BB%93%E6%9E%9C%E5%B1%95%E7%A4%BA">結果展示</a>

<a href="#%E5%88%9D%E5%A7%8B%E9%A1%B5%E9%9D%A2">初始頁面</a>

<a href="#%E7%82%B9%E5%87%BB%E6%8C%89%E9%92%AE%E4%B9%8B%E5%90%8E">點選按鈕之後</a>

<a href="#%E6%80%BB%E7%BB%93">總結</a>

今天這個實驗的思路就是實作一個無重新整理的頁面加載效果。具體的思路是使用PHP開發背景,為前台準備資料,然後使用Ajax技術作為資料的搬運工,将資料從伺服器端拉取到前端,最後使用JavaScript技術将擷取到的資料加工,并顯示在頁面上。

本次實驗資料以Json的格式傳輸和處理。下面有兩種生成json字元串的方式。

PHP自帶json_encode()和json_decode()方法。但是解碼的那個方法并不常用,這是由浏覽器的自身工作原理決定的。在生成Json 串的時候,我們隻需要将要編碼的資料傳給json_encode()即可。

相較于第一種方式,第二種方式就顯得不那麼自動化了,因為是手工生成的,但是對于小型資料量的處理而言,速度還是很快的。

注意:使用第二種方式一定要注意字元串外邊使用單引号,内部鍵值對資料使用雙引号。

這裡為了示範的友善,采用了第二種方式。

何為搬運工? 在這裡就是向伺服器請求資料,然後将獲得的資料返還給請求所在的用戶端。Ajax在這裡就是這麼一個功能。

下面的這段代碼就示範了如何建立一個ajax對象并讓其工作。

有了資料之後,剩下的工作就是讓資料呈現出一種易于觀察的樣子。這樣資料才有了存在的價值。

這裡我們利用ajax擷取到的資料是一個字元串資料,但是我們要想使用這些資料,怎麼辦呢?

難道是手動的分割這些資訊嗎?但是要怎麼分割呢?···

是以我們要借助eval函數

PHP + JavaScript + Ajax 實作無重新整理頁面加載效果
PHP + JavaScript + Ajax 實作無重新整理頁面加載效果

我們不難發現,頁面上的連結根本沒有發生變化,這就是無重新整理實作的頁面加載!

這樣,我們的實驗就算完成了。我們可以看出要想給使用者提供一個更好的使用者體驗,Ajax絕對是必經之路。