Ajax -- 困惑者指南,第2部分:開發基於Dojo的部落格閱讀器

來源:互聯網
上載者:User

Atom 協議對讓網路資源(比如新聞、社區網站和部落格)的提供者能夠通過 Web 連鎖其內容。在 Atom 的典型應用中,內容提供者一般會連鎖一個檔案或一個 Web 提要,並讓其在 Web 上可用。提要的表示在 Atom Syndication Format 中定義,它提供了新添加的資源的一個概要。發布了的提要可隨後由 Atom 客戶軟體使用,例如由部落格閱讀器使用,後者使用 Atom Publishing Protocol 發現新添加的內容並加以呈示。

本文通過展示如何開發一個基於 Ajax 和 Atom 的部落格閱讀器來進一步豐富您這方面的知識(在本期文章中,將會開發閱讀器的視圖和控制器組件)。您將使用 Dojo 工具箱來開發這個應用程式,而此應用程式使用 Atom Publishing Protocol 與後端 Atom 提要通訊。此外,您還會使用 Dojo 儲存包來儲存提要訂閱資料。

Dojo — 我們所選用的 Ajax 工具箱

部落格閱讀器應用程式基底於的是 Dojo 工具箱,您可能會奇怪我們為何選用了 Dojo 而不是其他的工具箱。Book of Dojo(參見 參考資料)給出了其中的幾個原因,但出於本次練習的目的,我們只列出了驅使我們使用 Dojo 的兩個簡單原因:

垂直整合和完成:與其他開源 Ajax 工具箱相比,Dojo 提供了最為全面和整合化的組件庫。

黑盒重用:Dojo 小組件機制讓開發人員可以從小組件組建新的應用程式,而無需知道其 “內幕”。這就讓複雜 Ajax 應用程式的建立變得比較簡單。

垂直整合和完成

Dojo 具有分層架構,其中的每一層都添加了更為先進的功能:

Dojo 核心層包含了在很多工具箱(比如 IO 和 DnD)中都存在的 基本的 Ajax 特性、跨瀏覽器安全色性、基本 DOM 處理等。

在 Dojo 核心層之上是 DIJIT 層,提供小組件系統以及很多小組件。

最後一層是 DOJOX,包括各種擴充,比如離線儲存和跨瀏覽器向量圖。

Dojo 架構的各層都提供了一種綜合的整合式工具箱,可以滿足大多數開發需求。

黑盒重用 — 小組件

Dojo 小組件是基於 Ajax 的 UI 組件,可用一行 HTML 程式碼重用。比如,清單 1 給出了一個可擴充的 title 窗格小組件是如何在 HTML 頁面中執行個體化的:

清單 1. 在 HTML 頁面中 Title 窗格小組件的執行個體化

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
  <script type="text/javascript" src="../../dojo/dojo.js"
      djConfig="parseOnLoad: true, isDebug: true"></script>
  <script language="JavaScript" type="text/javascript">
      dojo.require("dijit.TitlePane");
      dojo.require("dojo.parser");
  </script>
  <style type="text/css">
    @import "../../dojo/resources/dojo.css";
    @import "../themes/tundra/tundra.css";
  </style>
</head>
<body class="tundra">
  <div dojoType="dijit.TitlePane"
    title="This is the title" style="width: 300px;">
    And this is the content, clicking the title
    will expand/collapse me.
  </div>
</body>
</html>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.