https://www.packtpub.com/mootools-1-2-beginners-guide/book
一如既往的是pucktpub出版社,一如既往的是前端,一如既往的是開源。
公司內部KM統計大家最喜歡使用的AJAX架構,還是jQuery佔了主流,但有不少筒靴選擇了MooTools,並且是傳說的OO,於是勾起學習MooTools的慾望,在pucktpub搜了一下,正好有一本《MooTools 1.2 Beginner's Guide》,於是這無數次拖延之後,今天終於鼓起勇氣把它看下去。
這本書的語言不像其learning系列通俗易懂,但是過了英語六級的應該也不在話下。主要內容還是JS架構的老東西,DOM,Events,Animation,Ajax和Plugins,感覺和jQuery的東西差不多,就是又多了一套不同的文法。在OO方面也還沒看出來具體的殺傷力,可能需要實踐。
第一章《MooTools and Me》老東西,MooTools的優勢和安裝;
第二章《Writing JavaScript with MooTools》講了HTML,CSS和JavaScript的分離,也就是obtrusive,然後介紹了一些Hello World層級的例子。記憶深刻的是定義class的方式,和繼承的方式
var Dog = new Class({ // Implements is a class property // upon which other classes methods will be added Implements: [ Options ], // Default options for our Dog options: { name : 'Barkee', type : 'Poodle', age : 4 }, // initialize is a MooTools method/constructor that executes the //following function whenever a new instance of a class is created initialize: function( options ) { this.setOptions( options ); }, // Create a method which when passed to a instance of Dog will //tell us our dog is barking. bark : function() { alert( this.options.name + ' is barking.' ); },});
繼承就是把上面代碼中的Implements替換為Extends
第三章《Selecting DOM Elements》就是DOM選擇,和jQuery不同的是MooTools有一個$(),還有一個$$(),第一個只是能用ID選擇,並且在$("ID")沒有"#"號,$$()的用法和jQuery的中的$()用法一樣,感覺可能還沒有jQuery強大。
第四章《The Core's Useful Utility》講了用戶端瀏覽器和OS的探測,時間和定時器的東西。花了很大篇幅講探測瀏覽器和OS,個人不是高度興趣。
第五章《Working with Events》MooTools的事件,感覺還是jQuery更方便和強大些。
第六章《Bringing Web Pages to Life Using Animation》講動畫,跳過沒看。
第七章《Going 2.0 with Ajax》講Ajax,感覺還是jQuery方便強大些。
第八章講外掛程式Plugin,第九章講外掛程式的開發,這兩章沒看。
整體感覺這本書不是那麼完美,代碼例子都簡單到位,但花了太多頁面空間,還有就是語言不是那麼流暢。並且發現前端輕量級架構基本都是那些東西。重量級點的比如Ext js這這些不是一個思路。想快速開發,覺得Ext js不錯,哐哐哐,幾個組件一搭一個頁面就出來了,剩下的寫Server端就好了。但是個人還是喜歡這種薄輕透的東西,感覺有種控制感,哈哈哈