用Spry框架來簡化AJAX

chszs發表於2007-09-22
版權宣告:本文為博主chszs的原創文章,未經博主允許不得轉載。 https://blog.csdn.net/chszs/article/details/1795636
用Spry框架來簡化AJAX

Spry AJAX框架是一個面向Web設計者的JavaScript庫。它提供了很多供設計者建立頁面的擴充套件功能,AJAX風格。
目前其最新版本為2007.5.17日釋出的1.5版本。
下載地址為:http://www.adobe.com/cfusion/entitlement/index.cfm?event=custom&sku=RC00210&e=labs_spry
Spry框架的目標:
1)保持開放
Spry工作在所有的HTML編輯器上,包括Dreamweaver。任何人都可以從Adobe Labs下載它,開始建立高效能的互動式Web頁面和應用程式。無需授權或服務端程式碼支援。
2)易於使用
Spry使用了同建立Web頁面相同的技術,如HTML,CSS和JavaScript,包括幾個JavaScript庫。使用同樣的技術來建立和設計動態區域和互動式的工具,可以象其它HTML元素一樣在頁面上使用。
3)能夠創新(innovation)
Spry提供了輕量級的強有力的模型,如增加資料、互動性,豐富的UI工具,促使你完全控制設計。
Spry同時為Web設計者和開發者而建立。它的指導原則:
1)工作在Web產品上,集中精力於Web UI和x(HTML)產品
2)x(HTML)和CSS專家
3)熟悉JavaScript和DOM
4)關心程式碼的質量
5)想建立下一代的Web頁面。
要求:
1)保持框架熟悉、輕量級和透明性
2)保持框架最小(以頁為中心Page-Centric)
3)看起來象HTML的自然擴充套件
4)和其它技術的整合
提供更好的設計開發工作流
1)促使設計時的資料和內容的分離
2)支援”design-time XML”
3)框架易於均衡design-time工具
下一代的Web使用者介面
看例子:
http://labs.adobe.com/technologies/spry/demos/index.html
Spry是客戶端框架,以JavaScript庫的方式增加到Web頁面中。Spry的JavaScript庫主要有三個模組:
1)Spry Data
使用Spry Data Sets and Regions來訪問和顯示資料。Spry的Data Set是一個JavaScript物件,負責載入和管理資料。Data Set基礎類適合多種不同的資料來源訪問資料。
2)Spry Regions
一個Spry dynamic Region是Web頁面上繫結資料集的一個區域。當資料集被修改時(如,從伺服器載入資料,過濾、排序等),Spry Region被更新並反射新資料。Spry Region能用任何HTML塊元素如<div>、<p>標籤建立。
例:
<div spry:region=”dsProducts” id=”content”>
    <table id=”products”>
    …
    </table>
</div>
3)Loading Data
Spry Data Set負責載入和處理資料,而XML是經常用到的在伺服器端到客戶端傳遞資料。Spry XML Data Set能被用於通過瀏覽器的XMLHTTPRequest物件來檢索資料。XML可以包含在一個檔案中,也可以是伺服器端的函式呼叫。Spry使用XPath,W3C標準來描述XML節點集,識別節點描述為資料記錄。
4)Data Set Declaration
Spry Data Set增加到頁面分為兩步。
首先,包含適當的JavaScript庫:
<script type=”text/javascript” src=”/SpryAssets/xpath.js”/>
<script type=”text/javascript” src=”/SpryAssets/SpryData.js”/>
其次,建立Data Set的例項,通過知道XML資料,定義重複的節點。
var dsProducts=new SpryDataXMLDataSet(“products.xml”,”products.product”)
————
dsProducts: 變數引用。資料集的名字。
SpryDataXMLDataSet:物件例項。
products.xml:XML資料。
products.product:XPath。在XML檔案中指向節點的指標。
5)顯示資料
使用Spry Regions顯示資料到Web頁面。建立從資料集到Spry Regions的繫結是很容易實現的,通過附加Spry屬性到HTML標準標籤上。如下的例子:
<div spry:region=”dsProducts” id=”content”>
    <table id=”products”>
        <tr>
            <th spry:sort=”name”>Product</th>
            <th spry:sort=”category”>Category</th>
        </tr>
        <tbody spry:repeat=”dsProducts”>
            <tr>
                <td>{name}</td>
                <td>{category}</td>
            </tr>
        </tbody>
    </table>
</div>
——————
Spry Region Declaration:Spry區域宣告
Data Set Binding:資料集繫結
Spry Attributes:Spry屬性
Spry Data Bindings:Spry資料繫結
Repeat Region Declaration:重複區域宣告
6)Master/Detail Data Sets
Spry框架支援Master/Detail Data Sets概念。這意味著在Master Data Sets中選擇記錄來驅動Detail Data Set的內容。


相關文章