(jQuery,YUI)哪一个适合我?
?
從前段時(shí)間一不小心從某開(kāi)源網(wǎng)站上看到某人狂噴jQuery開(kāi)始,到現(xiàn)在在淘寶的UED上看到使用YUI與jQuery的爭(zhēng)辯,我一直在思考到底jQuery怎么了,貌似被一大堆人鄙視。
1:首先jQuery不是表面看的那么簡(jiǎn)單。對(duì)他造成誤導(dǎo)的關(guān)鍵或許是jQuery官方文檔造成的失誤,他過(guò)于強(qiáng)調(diào)簡(jiǎn)單,以至于初學(xué)者導(dǎo)致了強(qiáng)耦合。
舉個(gè)例子:
在jQuery官方文檔上有下面一段代碼
$('#other').click(function() {$(this).addClass('cccc');
}); 如果在YUI的文檔上則會(huì)告訴你,應(yīng)該像如下形式寫(xiě)
var callback=function(e){var self=$(e.currentTarget);self.addClass('cccc'); } $('#other').click(callback); 或許下面的寫(xiě)法更合適一點(diǎn),至少在callback可以重復(fù)利用的時(shí)候,他派上了用場(chǎng)。
2:看到某人關(guān)于$.ajax的質(zhì)疑,提出的觀點(diǎn)為$.ajax的缺少send的方法,即如果使用$.ajax就會(huì)自動(dòng)發(fā)送請(qǐng)求。
其實(shí)你可以把$.ajax當(dāng)做send方法使用。
var o={url:'list.action',dataType:'json',data:{},success:callback }; var callback={};$.ajax(o); 某人居然還說(shuō)下面的寫(xiě)法什么玩意,我真的不明白這樣寫(xiě)有什么不好?難道是因?yàn)槎鄬?xiě)了url,success這些參數(shù)的名稱(chēng)?
$.ajax({url: 'ajax/test.html',success: function(data) {$('.result').html(data);alert('Load was performed.');} }); 這樣做的好處是我不需要記住參數(shù)的順序,如果你想方便,當(dāng)然可以使用簡(jiǎn)便的方法
$.post('ajax/test.html',data,callback,'json');
3:jQuery只是提供了一個(gè)庫(kù),你怎么可以強(qiáng)求他是萬(wàn)能的,他當(dāng)然不如YUI的組件豐富,但是你能對(duì)一個(gè)100Kb的庫(kù)抱怨什么呢?最好的方式就是你可以基于jQuery開(kāi)發(fā)一套屬于自己的UI。
因?yàn)橹挥心阕约鹤蠲靼资裁床攀沁m合自己的,什么才是自己需要的。經(jīng)常看到網(wǎng)絡(luò)上有種言論:“不重復(fù)發(fā)明輪子”,其實(shí)我自己對(duì)這個(gè)還是持不贊同的態(tài)度。我承認(rèn)或許別人寫(xiě)的很完善,但是如果你不去嘗試下,又怎么能明白自己的差距在哪里,而當(dāng)你使用別人的東西的時(shí)候,突然發(fā)現(xiàn)這個(gè)東西不是適合自己的時(shí)候,又不得已去閱讀其源碼乞求自己可以慢慢的將其改成適合自己的東西,勞神勞力的同時(shí)還不如自己發(fā)明個(gè)適合自己的“輪子”。當(dāng)然這并沒(méi)有什么意思,只是抱著一種學(xué)習(xí)的態(tài)度去看食物,閱讀大師的代碼,總是不自覺(jué)的興奮,驚嘆牛人的思維,更加感到自己的渺小,其實(shí)錯(cuò)不在jQuery,在于使用jQuery的大部分人的水平有限吧~~當(dāng)然我也是大部分人中的一個(gè),可是沒(méi)有關(guān)系吧,慢慢成長(zhǎng)吧,怎么可以奢望一口吃個(gè)胖子呢!!
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/gxll1314/archive/2010/12/01/1893735.html
總結(jié)
以上是生活随笔為你收集整理的(jQuery,YUI)哪一个适合我?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 南方人物周刊:智能手机割据战
- 下一篇: cmd命令运行jar包