欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2007年04月09日 00:00:00   作者:  

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


  圖1-3:來(lái)自文章"Ajax:Web應(yīng)用程序的新途徑"的圖示,展示發(fā)生于客戶(hù)和服務(wù)器之間的先進(jìn)的異步的交互

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


圖1-4. Google Suggest,早于Garrett的Ajax論文的利用了異步XML技術(shù)的應(yīng)用程序

  除此而外,Google的另一個(gè)革命性的應(yīng)用程序?yàn)镚oogle Map,用戶(hù)在其地圖上移動(dòng)將會(huì)實(shí)時(shí)地看到相關(guān)的局部結(jié)果。這一程序通過(guò)使用Ajax技術(shù)而提供的速度和可用性的水平是其它任何可用的地圖程序所無(wú)法比擬的,結(jié)果徹底地變革了在線地圖市場(chǎng)。圖1-5是Google Map的截屏.


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


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


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

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

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

相關(guān)文章

  • 使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫(huà)性能好

    使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫(huà)性能好

    requestAnimationFrame優(yōu)于setTimeout/setInterval的地方在于它是由瀏覽器專(zhuān)門(mén)為動(dòng)畫(huà)提供的API,在運(yùn)行時(shí)瀏覽器會(huì)自動(dòng)優(yōu)化方法的調(diào)用,并且如果頁(yè)面不是激活狀態(tài)下的話,動(dòng)畫(huà)會(huì)自動(dòng)暫停,有效節(jié)省了CPU開(kāi)銷(xiāo),這篇文章給大家詳細(xì)介紹使用requestAnimationFrame實(shí)現(xiàn)js動(dòng)畫(huà)
    2015-08-08
  • 微信小程序中插入激勵(lì)視頻廣告并獲取收益(實(shí)例代碼)

    微信小程序中插入激勵(lì)視頻廣告并獲取收益(實(shí)例代碼)

    這篇文章主要介紹了微信小程序中插入激勵(lì)視頻廣告并獲取收益,通過(guò)代碼給大家介紹了如何插入及注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • javascript實(shí)現(xiàn)的textarea運(yùn)行框效果代碼 不用指定id批量指定

    javascript實(shí)現(xiàn)的textarea運(yùn)行框效果代碼 不用指定id批量指定

    今天在寫(xiě)一個(gè)網(wǎng)頁(yè)的時(shí)候用到了N多嵌套在textarea標(biāo)簽里的代碼,定義雙擊運(yùn)行其內(nèi)的代碼段。但是每次創(chuàng)建一個(gè)這樣的可運(yùn)行的實(shí)例都要給textarea元素自定義一個(gè)id值和寫(xiě)入雙擊事件,好不麻煩。
    2009-12-12
  • JavaScript 繼承詳解(五)

    JavaScript 繼承詳解(五)

    在本章中,我們將分析John Resig關(guān)于JavaScript繼承的一個(gè)實(shí)現(xiàn) - Simple JavaScript Inheritance,需要的朋友可以參考下
    2016-10-10
  • js中的document.querySelector()方法舉例詳解

    js中的document.querySelector()方法舉例詳解

    這篇文章主要給大家介紹了關(guān)于js中document.querySelector()方法的相關(guān)資料,document.querySelector是JavaScript中的一個(gè)內(nèi)置方法,用于通過(guò)CSS選擇器選擇文檔中的第一個(gè)匹配元素,需要的朋友可以參考下
    2024-01-01
  • webpack多入口文件頁(yè)面打包配置詳解

    webpack多入口文件頁(yè)面打包配置詳解

    本篇文章主要介紹了webpack多入口文件頁(yè)面打包配置詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • js option刪除代碼集合

    js option刪除代碼集合

    javascript刪除option選項(xiàng)的多種方法,方便大家選用。
    2008-11-11
  • Echarts.js實(shí)現(xiàn)水滴球和海洋效果

    Echarts.js實(shí)現(xiàn)水滴球和海洋效果

    這篇文章介紹了Echarts.js實(shí)現(xiàn)水滴球和海洋效果的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法

    js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法

    今天小編就為大家分享一篇js jquery 獲取某一元素到瀏覽器頂端的距離實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 25個(gè)讓你眼前一亮的JavaScript代碼技巧分享

    25個(gè)讓你眼前一亮的JavaScript代碼技巧分享

    學(xué)習(xí)強(qiáng)大的JavaScript一行代碼,能夠節(jié)省你的時(shí)間和代碼量,所以本文為大家整理了25個(gè)JavaScript實(shí)用代碼技巧,感興趣的小伙伴可以了解一下
    2023-07-07

最新評(píng)論