日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

淺談Ajax的缺點(diǎn)_AJAX教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

推薦:使用AJAX技術(shù)打造博客無(wú)刷新搜索引擎
如果你對(duì)AJAX不是很了解,可以先看看這篇教程: 《AJAX初體驗(yàn)之上手篇》 。 現(xiàn)在博客很流行,相信應(yīng)該上網(wǎng)時(shí)間稍微長(zhǎng)點(diǎn)的朋友都會(huì)在這或者在那的有一個(gè)自己的博客。對(duì)于一些有一定能力的朋友,可能更喜歡自己去下載一個(gè)博客程序來(lái)架設(shè)一個(gè)自己的博客,而不是

在某網(wǎng)站瞎逛時(shí),發(fā)現(xiàn)這個(gè)鏈接,進(jìn)去逛了逛,覺(jué)得很有意思,大家也可以去看看,姑且不論你是否同意里面的觀點(diǎn),看看別人看待ajax的角度,這對(duì)于理解一個(gè)事物很有幫助。

下面是我對(duì)一部分缺陷的看法:

為Ajax而Ajax(Using Ajax for the sake of Ajax.)
很同意這點(diǎn),當(dāng)一個(gè)技術(shù)本身的生存意義由于它自身的亮點(diǎn)而被抹殺,不知道是這個(gè)技術(shù)的幸運(yùn)還是不幸。

干掉了back按鈕(Breaking the back button)
back按鈕是一個(gè)標(biāo)準(zhǔn)的web站點(diǎn)UI的重要功能。然后,后退按鈕沒(méi)法和js很好的合作……
gmail似乎作的很好?不過(guò)沒(méi)去仔細(xì)看過(guò)gmail如何實(shí)現(xiàn)后退和js相容的,被這個(gè)mistake一提醒,也許這也是ue的一個(gè)切口哦。

點(diǎn)擊的時(shí)候沒(méi)有提供一個(gè)可視化的提示(Not giving immediate visual cues for clicking widgets)
……也許是我沒(méi)看懂,覺(jué)得寫(xiě)這段的人自相矛盾。。他說(shuō)沒(méi)提供可視化提示,不過(guò)是拿gmail右上角的紅色提示作為例子。

阻擋了離線用戶于門(mén)外(Leaving offline people behind)
看標(biāo)題就清楚了,不過(guò)我持保留意見(jiàn),web application和離線瀏覽本身似乎就存在著矛盾,要整合,可能要?jiǎng)雍芏嗄X子

別讓我等(Don’t make me wait)
不過(guò),ajax本身就存在著如果客戶端的帶寬不夠,它的展示就會(huì)一塌糊涂的問(wèn)題,這是它的先天缺陷,也是它崛起的先天因素--由于網(wǎng)速和帶寬的不斷增大,使得服務(wù)端與客戶端的頻繁通信成為可能。

顯式的傳遞敏感信息(Sending sensitive information in the clear)
使用js傳遞數(shù)據(jù),本身似乎就存在著這個(gè)風(fēng)險(xiǎn),在我找到反對(duì)意見(jiàn)之前,我傾向認(rèn)同這點(diǎn)--h(huán)ttps協(xié)議除外。

假設(shè)ajax發(fā)展是一個(gè)單平臺(tái)的發(fā)展。(Assuming AJAX development is single platform development)
作者文中的觀點(diǎn)是ajax由于必須兼容多個(gè)瀏覽器,而沒(méi)法做到只需要編碼到標(biāo)準(zhǔn)的js就行,還要考慮到各個(gè)瀏覽器的問(wèn)題……這個(gè)是js的問(wèn)題,和ajax關(guān)系不大吧?

忘掉了可能多人在同時(shí)使用同一個(gè)應(yīng)用(Forgetting that multiple people might be using the same application at the same time)
嗯,這其實(shí)是一個(gè)同步的問(wèn)題,在b/s系統(tǒng)中這是一個(gè)麻煩的問(wèn)題……當(dāng)然,也許并不麻煩,做一個(gè)標(biāo)記位就解決了吧?

太多代碼讓瀏覽器慢下來(lái)(Too much code makes the browser slow)
呃……同意這點(diǎn),雖然在代碼優(yōu)化之后會(huì)有很大改善,但js本身運(yùn)行速度慢這個(gè)缺陷還是會(huì)成為一個(gè)瓶頸。

不計(jì)劃要那些禁用或者沒(méi)有js的用戶(Not having a plan for those who do not enable or have JavaScript)
呃……我在頁(yè)面上用ajax的時(shí)候就準(zhǔn)備放棄這些用戶了,我沒(méi)google那么閑,作兩套系統(tǒng),一套用ajax,一套純頁(yè)面。不過(guò)養(yǎng)成一個(gè)良好的編碼習(xí)慣還是有必要,比如在超鏈接中不要直接設(shè)置href="javascript:..."而使用onmouseup或者onclick來(lái)觸發(fā)事件,偶爾也為別人考慮考慮嘛,而且我也不能保證我的js程序在所有的瀏覽器上通吃。

不期然的頁(yè)面閃爍和改變(Blinking and changing parts of the page unexpectedly)
我沒(méi)經(jīng)歷過(guò)以前網(wǎng)頁(yè)中blink標(biāo)簽的騷擾,所以我對(duì)作者的反感有點(diǎn)摸不著頭腦,我覺(jué)得在適當(dāng)?shù)奶崾局笏⑿履硥K頁(yè)面總比整個(gè)頁(yè)面的刷新看起來(lái)舒服。

沒(méi)法把超鏈接發(fā)給朋友以及收藏(Not using links I can pass to friends or bookmark)
嘿嘿,這就是我上面提及的那點(diǎn),如果編碼習(xí)慣夠好--而且時(shí)間夠多,在超鏈接中為非js用戶和js用戶提供兩套方案是可行的。

同步導(dǎo)致的批量操作(Asynchronously performing batch operations)
作者的意思是說(shuō)ajax一次性把原來(lái)要分幾次作的操作一次做掉,而導(dǎo)致他沒(méi)法跟蹤每個(gè)元素變化,沒(méi)法回溯,呃……也許是有這種需求吧。。不過(guò)似乎也是可以解決的吧?

導(dǎo)致頁(yè)面滾動(dòng)并讓我迷失位置(Scrolling the page and making me lose my place)
作者認(rèn)為插入文本到一個(gè)頁(yè)面中會(huì)導(dǎo)致頁(yè)面發(fā)生滾動(dòng),并讓其迷失方向,我沒(méi)看過(guò)這么惡心的效果,沒(méi)法評(píng)價(jià),不過(guò)我對(duì)于一些ajax的導(dǎo)航作的不好表示不滿意,我經(jīng)常會(huì)迷失于一些ajax程序中而不知道我剛才上一步到了哪里……

發(fā)明了新的UI習(xí)慣(Inventing new UI conventions)
呵呵,作者用了一句話來(lái)描述這個(gè)缺點(diǎn):“點(diǎn)擊一個(gè)不明顯的東東來(lái)產(chǎn)生一個(gè)不明顯的結(jié)果”。這個(gè)歸納倒是滿準(zhǔn)確的,在很多ajax程序中,用戶完全是作為一個(gè)瞎子,在抖抖索索的摸著這個(gè)ajax程序大象,在到處瞎點(diǎn)一氣并瞎拖一氣之后才掌握這個(gè)程序的用法。但是換個(gè)角度來(lái)說(shuō),最開(kāi)始的web頁(yè)面不也是一樣?沒(méi)有開(kāi)始的困難接觸,不會(huì)有之后的進(jìn)步,只要有足夠的幫助,上手任何東西都應(yīng)該不會(huì)太難--除非這東西本來(lái)就不想讓人覺(jué)得好用,那就是其它的問(wèn)題了。

阻止了爬蟲(chóng)(Blocking Spidering)
同意這點(diǎn),我在猶豫著使用ajax的時(shí)候,就在考慮爬蟲(chóng)對(duì)js的不感冒,以及爬蟲(chóng)該如何理解我那些以奇怪方式加載的頁(yè)面,去解析ajax庫(kù)似乎是一個(gè)不可能的事情,爬蟲(chóng)又不是人腦,如果爬蟲(chóng)可以媲美人腦,那就是《駭客帝國(guó)4》了。

字符集(Character Sets)
ajax本身對(duì)字符集的支持比較缺失,這個(gè)這個(gè)……設(shè)置成utf-8吧,不過(guò)作者最后也是這么說(shuō)的。

使用超鏈接改變狀態(tài)(Changing state with links (GET requests))
作者認(rèn)為主流的ajax應(yīng)用程序都是用get方式來(lái)工作,而這違反了W3對(duì)GET和POST方法的使用建議……我少見(jiàn)多怪,主流的ajax應(yīng)用程序我沒(méi)怎么去看,不知道是不是真的都用get,雖然ajax編碼用get簡(jiǎn)單,但不表示ajax不能用post吧?

沒(méi)有連帶改變頁(yè)面中其它相關(guān)部分(Not cascading local changes to other parts of the page)
因?yàn)閍jax讓人很容易控制頁(yè)面中的特定部分,所以也容易導(dǎo)致過(guò)于關(guān)注某個(gè)點(diǎn)而失去對(duì)整體布局的關(guān)注。嗯嗯……這是編碼的問(wèn)題,表怪到ajax頭上。

問(wèn)題報(bào)告(Problem reporting)
作者認(rèn)為服務(wù)端的程序錯(cuò)誤,很容易再現(xiàn)并捕捉,而客戶端的錯(cuò)誤要重現(xiàn)就比較麻煩,嗯,支持這點(diǎn),不過(guò)還是和ajax關(guān)系不大……

投資回報(bào)(Return on Investment)
作者認(rèn)為ajax能夠提升應(yīng)用程序的可用性,但是富客戶端程序并不會(huì)比純html版本好多少……忽略這個(gè)觀點(diǎn),來(lái)人,把作者拖出去,賬責(zé)五十

拙劣地模仿瀏覽器頁(yè)面跳轉(zhuǎn)行為(Mimicing browser page navigation behavior imperfectly)
……忽略,沒(méi)看到作者所描述的情況。

分享:AJAX、AJAX實(shí)例及AJAX源代碼(asp)
AJAX介紹 AJAX 關(guān)鍵詞: JavaScript腳本和可擴(kuò)展標(biāo)記語(yǔ)言(XML) WEB瀏覽器技術(shù) 開(kāi)放式WEB標(biāo)準(zhǔn) 瀏覽器以及獨(dú)立平臺(tái) 更好更快的網(wǎng)絡(luò)應(yīng)用程序 XML以及HTTP請(qǐng)求 AJAX = 異步JavaScript和可擴(kuò)展標(biāo)記語(yǔ)言 AJAX是一種運(yùn)用JavaScript和可擴(kuò)展標(biāo)記語(yǔ)言(XML),在網(wǎng)絡(luò)瀏覽

來(lái)源:模板無(wú)憂//所屬分類(lèi):AJAX教程/更新時(shí)間:2010-03-26
相關(guān)AJAX教程