最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

現(xiàn)代 javscript 編程 資料

 更新時間:2007年04月09日 00:00:00   作者:  

Ajax,或曰異步Javascript與XML,是由Adaptive Path公司的創(chuàng)辦人之一兼董事長Jesse James Garrett在其論文"Ajax:Web應用程序的新途徑"(http://www.adaptivepath.com/publ ... archives/000385.php)中創(chuàng)造的一個術語。它描述了請求和提交額外的信息時發(fā)生于客戶和服務器之間的高級交互。
  術語Ajax包括了許多種數(shù)據(jù)據(jù)通訊的可能組合,但它們都圍繞一個中心前提:附加的數(shù)據(jù)請求是在頁面完全載入之后由客戶端向服務器發(fā)起的。這允許應用程序開發(fā)者超越緩慢的、傳統(tǒng)的應用程序流程,創(chuàng)建與用戶相關的額外交互。圖1-3是來自Garrett的Ajax論文的一個圖示,說明了應用程序中由于額外的請求發(fā)生在后臺(而且用戶很可能并不知情),交互的流程發(fā)生了怎樣的改變。


  圖1-3:來自文章"Ajax:Web應用程序的新途徑"的圖示,展示發(fā)生于客戶和服務器之間的先進的異步的交互

  Garrett論文的最初發(fā)表,激起了用戶、開發(fā)者、設計者以及管理者們的興趣,使用高級交互的新型應用程序爆炸式地增長。諷刺的是,在這一興趣復蘇的同時,Ajax背后的技術卻是相當陳舊的(在2000年左右就有已有了商業(yè)上的應用)。然而最主要的不同在于,老的應用程序利用了瀏覽器特有的方式與服務器通訊(如僅ie具有的功能)。由于所有的現(xiàn)代瀏覽器都支持XMLHttpRequest(發(fā)送或從服務器接收數(shù)據(jù)的主要手段),the playing field has been leveled(見#12 cfs178的回復),每個人都可以享受其益處。
  如果說有一個公司走在了利用Ajax技術創(chuàng)建優(yōu)秀應用程序的最前列,那無疑是Google。恰在最初的Ajax論文出現(xiàn)之前,它發(fā)布了一個高交互性的domo:Google Suggest。該demo可以實時地自動完成你所鍵入的查詢,這是舊式的頁面重載不可能達到的功能。圖1-4是Google Suggest運行時的一個截屏。


圖1-4. Google Suggest,早于Garrett的Ajax論文的利用了異步XML技術的應用程序

  除此而外,Google的另一個革命性的應用程序為Google Map,用戶在其地圖上移動將會實時地看到相關的局部結(jié)果。這一程序通過使用Ajax技術而提供的速度和可用性的水平是其它任何可用的地圖程序所無法比擬的,結(jié)果徹底地變革了在線地圖市場。圖1-5是Google Map的截屏.


圖1-5. Google Maps,利用了一些Ajax技術來動態(tài)載入特定區(qū)域信息


JavaScript開發(fā)所面臨的不幸事實是,因為與實現(xiàn)和支持它的瀏覽器關聯(lián)過于緊密,它受到當前最流行瀏覽器的支配。由于用戶未必會使用對JavaScript支持得最好的瀏覽器,我們被迫對哪些是最重要的功能作出抉擇。
  許多開發(fā)者已經(jīng)開始做的是去掉對那些導致過多開發(fā)障礙的瀏覽器的支持。因為它們用戶群的規(guī)模和還是因為它們擁有你喜歡的功能而考慮對瀏覽器的支持,需要仔細的權衡。
  最近Yahoo發(fā)布了一個可用來擴展你的web應用程序的JavaScript庫。連同那個庫,它還發(fā)布了一些供web開發(fā)者遵從的指導方針。以我之見,從中產(chǎn)生的最重要的文檔是Yahoo支持與不支持的各種瀏覽器的官方的列表。盡管任何人或任何公司都可以做類似的事情,一份由互聯(lián)上訪問最頻繁的網(wǎng)站所提供的文檔,其價值絕對無法估量。
  Yahoo開發(fā)了一個分級的瀏覽器支持策略,對瀏覽器指定特定的級別并依據(jù)其功能為它提供不同的內(nèi)容。Yahoo給瀏覽器三個級別:A,X和C:
  A級瀏覽器是得到完全支持和測試的,Yahoo的所有程序都能有保障在其中運行。
  X級瀏覽器是Yahoo認可但是沒能徹底測試的準A級瀏覽器,或者是嶄新的從未遇到過的瀏覽器。X級瀏覽器被期望能處理高級的內(nèi)容,與A級瀏覽器等同對待。
  C級瀏覽器是已知的“劣質(zhì)的”瀏覽器,不支持運行Yahoo應用程序所必須的功能。由于Yahoo應用程序完全Unobtrusive(即使沒有JavaScript它們也能繼續(xù)工作),這些瀏覽器只需處理不含JavaScript的功能性的內(nèi)容。
  順便一提,Yahoo的瀏覽器級別選擇竟與我的不謀而合,這使得它尤其富有吸引力。在這本書里,我大量地使用了術語“現(xiàn)代瀏覽器”,當我用這一措詞的時候,我指的Yahoo瀏覽器分級表評定為A級的任瀏覽器。給定一組賴以工作的一致的功能,減少因避免瀏覽器的不兼容而帶來的痛苦,學習和開⒌木岜淶酶佑腥ぁ?lt;br>  我極力推薦你們?nèi)ネㄗx瀏覽器分級的支持文檔(見http://developer.yahoo.com/yui/articles/gbs/gbs.html,該文檔包含了圖1-6所示的瀏覽器支持表),感受一下Yahoo力圖實現(xiàn)的是什么。通過將些信息公之于web開發(fā)的大眾,Yahoo正在給出一條無價的“黃金標準”讓其它所有人去靠攏,這是很了不起的。


圖1-6. Yahoo提供的瀏覽器分組支持表

  更多的關于瀏覽器支持情況的信息請參看本書的附錄C,那里對每種瀏覽器的缺點和長處都有深入的論討?;蚨嗷蛏俚兀銜l(fā)現(xiàn)所有的A級瀏覽器都走在發(fā)展的最前列,提供了遠遠超出你的開發(fā)所需要的功能。
  當選擇你希望支持哪些瀏覽器時,最終結(jié)果實際上可以歸結(jié)為你的應用程序支持的一組功能。如果你想要支持NS4或IE5(舉個例子來說),則勢必嚴格地限制你可以在程序中使用的功能的數(shù)量,因為它們?nèi)狈ΜF(xiàn)代編程技術的支持。
  盡管如此,了解哪些瀏覽器是現(xiàn)代的允許你利用其中可用的強大的功能并給你一個可供將來的開發(fā)所依據(jù)的穩(wěn)固的基礎。這一穩(wěn)固的開發(fā)基礎可由以下幾種功能所定義:
  核心Javascript 1.5: 最近、最廣泛接受的JavaScript版本。它全面支持面向?qū)ο蟮腏avaScript。IE5.0不支持全部的1.5,這是開發(fā)者們不愿意支持它的主要原因。
  XML文檔對象模型(DOM)2:用來訪問HTML和XML文檔的的標準方案。這絕對是編寫高效率的程序不可或缺的。
  XMLHttpRequest: Ajax技術的支柱——用來發(fā)起HTTP請求的一個簡單層。所有的瀏覽器默認都支持這一對象,除了IE5.0-6.0;而它們也都支持用ActiveX初始化功能相當?shù)膶ο蟆?BR>  CSS: 網(wǎng)頁設計的基本需求。這似乎像是一個額外的需求,但是擁有CSS對web應用程序開發(fā)者來說是必不可少的。由于每一種現(xiàn)代瀏覽器都支持CSS,大多數(shù)問題的發(fā)生通常歸結(jié)為呈現(xiàn)方面的差異。這正是IE for Mac較少被頻繁支持的主要原因。
  以上這些瀏覽器功能的結(jié)合構成了開發(fā)JavaScript web應用程序的支柱。所有的現(xiàn)代瀏覽器都以某種方式支持以上列舉的功能。本書論述的所有內(nèi)容都基于這一假設:你所使用的瀏覽器最起碼能支持它們。

經(jīng)典論壇討論
http://bbs.blueidea.com/thread-2733431-1-1.html

相關文章

最新評論

新乐市| 昭通市| 巴彦淖尔市| 扶余县| 博湖县| 安徽省| 双峰县| 裕民县| 康平县| 凤翔县| 肃北| 青岛市| 邵阳市| 江安县| 郑州市| 沧州市| 古蔺县| 依安县| 甘德县| 筠连县| 潞城市| 蚌埠市| 南郑县| 漯河市| 静安区| 临武县| 蓬溪县| 双江| 洮南市| 即墨市| 化州市| 崇文区| 建平县| 长垣县| 巍山| 图木舒克市| 游戏| 河津市| 潞城市| 历史| 观塘区|