若是你尚未準備好,請先閱讀上一篇《Mootools 1.2教程(1)——MooTools介紹》。咱們講了怎麼引用MooTools 1.2以及怎麼在domready裏面調用你的腳本。css
今天開始本系列教程的第2講。在這一講中,咱們會學習幾種選擇HTML元素的方法。在許多方面,這是MooTools用得最多最基本的。畢竟,要建立一個基於HTML元素的交互性用戶體驗,你必須首先把它們掌握在手中。html
$();css3
$函數是MooTools中基本的選擇器。你能夠經過它來根據一個ID選擇DOM元素。數組
.getElement();dom
.getElement();擴展了$方法,可讓你簡化你的選擇操做。例如,你能夠經過$方法來選擇ID爲」body_wrap「的元素,而後選 擇第一個子節點。.getElement();只選擇一個元素,若是有多個符合要求的元素則返回第一個元素。若是你給.getElement();方法一 個CSS類名做爲參數,你就會獲得第一個有這個CSS類名的元素,而不是函數全部元素的數組。要選擇多個元素,則可使用下面 的.getElements();方法。ide
$$();函數
$$函數能夠可讓你快速選擇多個元素,並組成一個數組(一種你能夠操做、獲取和以任何方式從新排序的列表)。你能夠經過標籤名(如div、a、img等)、或者ID或者是他們的各類組合來選擇多個元素。就像一個讀者指出的那樣,你能夠用$$作不少事情,遠遠超出咱們這裏所介紹的。學習
.getElements();spa
.getElements();和.getElement();很是相似,不過它返回全部符合要求的元素,並組成一個數組。你能夠想使用.getElement();方法那樣使用.getElements();。.net
運算符
MooTools 1.2支持幾種運算符,可讓你進一步精簡你的選擇操做。你能夠在.getElements();中使用這些運算符來包含或者排除特定的結果。MooTools支持4種運算符,每一種均可以用來經過名字(name)選擇一個input元素。
(Fdream注:input在這裏只是做爲一個例子,你一樣可使用這種方式選擇其餘元素,好比div、a等等。)
要使用運算符,你必須首先指定元素的類型(好比這裏的input),而後指定你要過濾的屬性(好比這裏的name),再加上你的 運算符,最後選擇你的過濾字符串。
even(偶數選擇)
經過這個簡單的選擇器,你能夠選擇序號爲偶數的元素。注意:這個選擇器從0開始計數,所以第一個元素是偶數序的。
odd(奇數選擇)
和even同樣,只不過它選擇序號爲奇數的元素。
.getParent();
經過.getParent();方法,你能夠獲得一個元素的父元素(parent)。
任何MooTools UI開發都是從選擇器開始的。這裏是一些很是簡單的例子,演示了怎麼去使用選擇器操做DOM元素。
這個zip包中包含了一個簡單的html文件、MooTools 1.2核心庫、一個外部js文件和上面你所看到的例子。
這並不意味着這是MooTools 1.2的選擇器的所有功能列表,這僅僅只是幫助你入門,告訴你MooTools給你提供了什麼功能。要學習有關選擇器的更多東西,請參考下面的文檔:
MooTools Blog上有關$$選擇器的文章
這是mootools.net上很是好的一篇有關$$選擇器和介紹它的變化無窮的blog文章。經過這個選擇器你能夠作多到你沒法相信的事情,這篇文章很值得一讀。
Slickspeed選擇器
這裏有別人針對MooTools作的一個實驗,測量不一樣的庫在選擇元素時到底有多快。這對於它自己來講很cool,不過這些選擇器的例子很是有價值。這裏全部的選擇器特性均可以經過$$方法實現。
W3C選擇器
MooTools也可讓你利用僞選擇器的力量(就像上面的Slickspeed所證實的)。這裏是W3C的一篇關於選擇器的文章,必定值得讀一遍(若是隻有選擇器的列表對你有用的話)。我不肯定MooTools的$$選擇器是否是支持這個頁面上的每個單獨選擇器,可是至少是絕大部分。歡迎你們告訴我有關這方面的更多消息。