摘要:前言我是,如果你還不認(rèn)識(shí)我,不妨先看看技術(shù)的前世今生一平靜的生活已經(jīng)有一段日子了。傳送門技術(shù)的前世今生一技術(shù)的前世今生三
前言:我是JavaScript,如果你還不認(rèn)識(shí)我,不妨先看看《Web技術(shù)的前世今生(一)》
平靜的生活已經(jīng)有一段日子了。
這一天,HTML大哥面露不悅地走過來問我:
“Js,你是打算和我們分家嗎?”
“大哥,您這說的哪里話,我什么地方做的不對(duì)么?”我一臉茫然地回答道。
“哼,我可是聽PHP老弟都說了,你最近總是讓它給你返回服務(wù)器上的數(shù)據(jù)。你就說有沒有這回事吧!”
“是有這么回事,不過??”
“看吧,我就知道你小子翅膀硬了,敢跟你大哥搶生意了。誰不知道把服務(wù)器端的數(shù)據(jù)構(gòu)建成網(wǎng)頁是你老哥我的活,你小子??”
“等等,大哥,是您誤會(huì)了”,看大哥越說越火大,我趕緊打斷了它。“您還記得我們那個(gè)叫Google的客戶么?”
“別和我提那個(gè)偏執(zhí)狂,上次和它合作那個(gè)電子郵箱的項(xiàng)目,我都費(fèi)了老大勁了,它還是不滿意,硬是說要做到在不重新加載整個(gè)網(wǎng)頁的情況下,對(duì)網(wǎng)頁的部分內(nèi)容進(jìn)行更新。要知道一直以來,我的工作方式都是每一次請(qǐng)求就要重新載入一個(gè)新的頁面,它這不純屬是難為人嗎??呃,現(xiàn)在在說你要自立門戶的事呢,你扯它干嘛?”
“大哥,您先別生氣,聽我給您解釋。就是那個(gè)叫Gmail的項(xiàng)目需要局部刷新的問題,之前您不是還問過我行不行嗎?當(dāng)時(shí)我沒有想到辦法。但前幾天我又好好琢磨下,發(fā)現(xiàn)似乎是可行的,我可以通過一個(gè)叫XHR的家伙去和服務(wù)器交換數(shù)據(jù),然后再將取得的新數(shù)據(jù)通過dom插入到當(dāng)前頁面中就可以了。最近我也是一直在研究這事,還沒來得及和您說呢?!?/p>
“哎呀,你看我這腦子”,大哥滿臉愧色地說:”弄了半天原來你是在幫老哥我??!剛才大哥的態(tài)度??”
“大哥”,我趕緊再一次打斷大哥的話,“您就別自我反省了,現(xiàn)在辦法有了趕緊去告訴那個(gè)偏執(zhí)狂才是正事,畢竟是個(gè)大客戶,丟了多不劃算?!?/p>
“哦,對(duì)對(duì)對(duì),我這就去。”
伴隨著大哥的心結(jié)被解開,這場(chǎng)風(fēng)波總算是過去了。
(猿知原味注:XMLHttpRequest(XHR)作為JavaScript的一個(gè)對(duì)象,可以用來在瀏覽器和服務(wù)器端傳輸數(shù)據(jù)。然而自從它1998年問世以來卻很少被重視,直到Google發(fā)布了Gmail、Google Maps等一系列運(yùn)用它開發(fā)的局部刷新的Web產(chǎn)品之后,這項(xiàng)異步請(qǐng)求的“新”技術(shù)才突然大火起來,并且還有了一個(gè)在Web發(fā)展史上影響深遠(yuǎn)的名字:Ajax)
時(shí)間來到了2005年,大概就是在那個(gè)時(shí)候,有人開始稱呼我們一家“Web前端”。我們前端家族成員最主要的特點(diǎn)就是運(yùn)行在瀏覽器上,所以像PHP、ASP等那些運(yùn)行在服務(wù)器上(后端)的家伙這輩子是別想落戶到我們家了。
提到瀏覽器,準(zhǔn)確地說是瀏覽器們,我在這里必須要吐槽一下。由于是商業(yè)產(chǎn)物,所以整天為了點(diǎn)市場(chǎng)份額打的你死我活的。原本我對(duì)它們之間的爭(zhēng)斗沒有興趣,但直到有一天我發(fā)現(xiàn),我構(gòu)建的同樣一段腳本,居然在它們身上呈現(xiàn)出的效果不統(tǒng)一,而且這種情況隨著卷入爭(zhēng)斗的瀏覽器種類增多變的越來越復(fù)雜??
“該死的Js,為什么按鈕的點(diǎn)擊沒起作用?”,“新版本的Js不能阻止事件冒泡了嗎?”,“這Js八成是抽風(fēng)了??”
那段日子,我經(jīng)常替瀏覽器們背鍋,承受著大家的誤解。就在我最煩心的時(shí)候,家里來新人了——jQuery。
“嘿伙計(jì),有啥絕活給我們露一手”,大哥先發(fā)話了。
“小意思”,jQuery一邊回答一邊完成了一段ajax調(diào)用的代碼,期間也操作了dom。
看著這段雖說像極了意大利面條、卻著實(shí)短小精悍的代碼,我和大哥正在驚詫的時(shí)候,jQuery又發(fā)話了:“歐了大哥,現(xiàn)在這段代碼可以放到任何瀏覽器上運(yùn)行了?!?/p>
“你是說??你能做到和js一樣的事,并且還??還解決了瀏覽器兼容的問題?”大哥驚訝的說話都開始結(jié)巴了。那一刻,我突然感受到前所未有的危機(jī)感。
“也不能完全這么說,我的存在只是為了讓人類盡可能不用考慮瀏覽器兼容的問題,并且以更優(yōu)雅的方式更方便地操作Web頁面,實(shí)際上背后的功臣還是js前輩,我只是它的小跟班?!?/p>
聽了jQuery的一番話,我熱(ru)淚(shi)盈(zhong)眶(fu)地走上前去握住它的手,“歡迎來到咱們家,以后就是一家人了?!?/p>
打那以后,我的生活就愜意多了,除非有jQuery解決不了的問題我才出面,一般而言這個(gè)小跟班都能很出色的完成任務(wù)。
然而與此同時(shí),PHP老兄的日子卻不那么好過,Web后端正醞釀著一場(chǎng)變革。
故事讀完了,還是意猶未盡?沒關(guān)系,關(guān)注“猿知原味”公眾號(hào)(yz--yw),還有一大波生動(dòng)有趣的干貨等著你。
傳送門:《Web技術(shù)的前世今生(一)》《Web技術(shù)的前世今生(三)》
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/100428.html
摘要:前言我是,如果你還不認(rèn)識(shí)我,不妨先看看技術(shù)的前世今生一平靜的生活已經(jīng)有一段日子了。傳送門技術(shù)的前世今生一技術(shù)的前世今生三 前言:我是JavaScript,如果你還不認(rèn)識(shí)我,不妨先看看《Web技術(shù)的前世今生(一)》 平靜的生活已經(jīng)有一段日子了。 這一天,HTML大哥面露不悅地走過來問我: Js,你是打算和我們分家嗎? 大哥,您這說的哪里話,我什么地方做的不對(duì)么?我一臉茫然地回答道。 哼,...
摘要:前言我是,如果你還不認(rèn)識(shí)我,不妨先看看技術(shù)的前世今生一平靜的生活已經(jīng)有一段日子了。傳送門技術(shù)的前世今生一技術(shù)的前世今生三 前言:我是JavaScript,如果你還不認(rèn)識(shí)我,不妨先看看《Web技術(shù)的前世今生(一)》 平靜的生活已經(jīng)有一段日子了。 這一天,HTML大哥面露不悅地走過來問我: Js,你是打算和我們分家嗎? 大哥,您這說的哪里話,我什么地方做的不對(duì)么?我一臉茫然地回答道。 哼,...
摘要:前言我是,如果你還不認(rèn)識(shí)我,不妨先看看技術(shù)的前世今生一,以及技術(shù)的前世今生二前面我提過,我的大哥有一個(gè)叫的死黨,這家伙有事沒事經(jīng)常上我們家串門。時(shí)間來到了年,在那前后發(fā)生了兩件事讓我印象深刻。傳送門技術(shù)的前世今生一技術(shù)的前世今生二 前言:我是JavaScript,如果你還不認(rèn)識(shí)我,不妨先看看《Web技術(shù)的前世今生(一)》,以及《Web技術(shù)的前世今生(二)》 前面我提過,我的大哥HTML...
摘要:直到有一天,大哥接到一項(xiàng)特殊的任務(wù),一位年輕的爸爸想給自己患有抑郁癥的孩子制作一個(gè)網(wǎng)站,希望網(wǎng)頁里的天空每天都可以更換一種顏色。猿知原味注老頭闡述的方法是最早的動(dòng)態(tài)網(wǎng)頁實(shí)現(xiàn)方案技術(shù)。傳送門技術(shù)的前世今生二技術(shù)的前世今生三 我的名字叫JavaScript,你也可以喊我Js。在說我的故事之前,我覺得有必要先介紹下我的大哥HTML,和大嫂CSS。沒錯(cuò),那個(gè)叫Java的家伙不是我的親戚,我們隔...
摘要:直到有一天,大哥接到一項(xiàng)特殊的任務(wù),一位年輕的爸爸想給自己患有抑郁癥的孩子制作一個(gè)網(wǎng)站,希望網(wǎng)頁里的天空每天都可以更換一種顏色。猿知原味注老頭闡述的方法是最早的動(dòng)態(tài)網(wǎng)頁實(shí)現(xiàn)方案技術(shù)。傳送門技術(shù)的前世今生二技術(shù)的前世今生三 我的名字叫JavaScript,你也可以喊我Js。在說我的故事之前,我覺得有必要先介紹下我的大哥HTML,和大嫂CSS。沒錯(cuò),那個(gè)叫Java的家伙不是我的親戚,我們隔...
閱讀 3658·2023-04-25 21:43
閱讀 3166·2019-08-29 17:04
閱讀 867·2019-08-29 16:32
閱讀 1598·2019-08-29 15:16
閱讀 2210·2019-08-29 14:09
閱讀 2805·2019-08-29 13:07
閱讀 1679·2019-08-26 13:32
閱讀 1375·2019-08-26 12:00