|
王國(guó)維在《人間詞話》說(shuō):古今之成大事業(yè)、大學(xué)問(wèn)者,必經(jīng)過(guò)三種之境界:
- 昨夜西風(fēng)凋碧樹(shù)。獨(dú)上高樓,望盡天涯路。
- 衣帶漸寬終不悔,為伊消得人憔悴。
- 眾里尋他千百度,驀然回首,那人卻在,燈火闌珊處。
類似,在 Web 中使用 Ajax 也有境界之分,這里境界不指技能的高低,而是思想的成熟。
Unobtrusive Ajax
有一片關(guān)于 Unobtrusive Ajax 的著名文章,是 Jesse Skinner (80后,3~4歲就玩電腦)在06年10月發(fā)表的:http://www.thefutureoftheweb.com/talks/2006-10-ajax-experience/slides/ 。文中指出應(yīng)當(dāng)將 JavaScript (或其它腳本)從 Html 中分離出來(lái),就像最初將樣式從 Html 中分離出來(lái)一樣道理。簡(jiǎn)單來(lái)說(shuō)就是將嵌入在 Html 中的 JavaScript 全部取出來(lái),放在單獨(dú)的 js 文件中,頁(yè)面中不要出現(xiàn)任何 onclick、onload 等。
使用 Unobtrusive Ajax 我們最大的收益就是簡(jiǎn)單易于維護(hù)的代碼(Code is cleaner and easier to maintain)。Jesse Skinner 將腳本分離(Separation)分成了兩種:Physical Separation 和 Conceptual Separation 兩種,也就是標(biāo)題中所提的兩種境界。如果沒(méi)有進(jìn)行腳本分離,只能算是個(gè)初學(xué)者,技術(shù)再高也談不上境界。
Physical Separation
代碼中沒(méi)有任何 onclick、onload,就算達(dá)到這一境界了。技術(shù)上比較容易實(shí)現(xiàn),通過(guò) jQuery 或其它 JavaScript Library 我們很容易進(jìn)行做到:
$('#abc').click(function(){
//...
});
it知識(shí)庫(kù):Unobtrusive Ajax 的兩種境界,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。