欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mootools 1.2教程(2) DOM選擇器

 更新時(shí)間:2009年09月14日 16:17:28   作者:  
今天開始本系列教程的第2講。在這一講中,我們會學(xué)習(xí)幾種選擇HTML元素的方法。在許多方面,這是MooTools用得最多最基本的。畢竟,要創(chuàng)建一個(gè)基于HTML元素的交互性用戶體驗(yàn),你必須首先把它們掌握在手中。
如果你還沒有準(zhǔn)備好,請先閱讀上一篇《Mootools 1.2教程(1)——MooTools介紹》。我們講了怎么引用MooTools 1.2以及怎么在domready里面調(diào)用你的腳本。
今天開始本系列教程的第2講。在這一講中,我們會學(xué)習(xí)幾種選擇HTML元素的方法。在許多方面,這是MooTools用得最多最基本的。畢竟,要創(chuàng)建一個(gè)基于HTML元素的交互性用戶體驗(yàn),你必須首先把它們掌握在手中。
基本的方法
$();
$函數(shù)是MooTools中基本的選擇器。你可以通過它來根據(jù)一個(gè)ID選擇DOM元素。
參考代碼:
復(fù)制代碼 代碼如下:

// 選擇ID為”body_wrap“的元素
$('body_wrap');

參考代碼:
復(fù)制代碼 代碼如下:

<div id="body_wrap">
</div>

.getElement();
.getElement();擴(kuò)展了$方法,可以讓你簡化你的選擇操作。例如,你可以通過$方法來選擇ID為”body_wrap“的元素,然后選擇第一個(gè)子節(jié)點(diǎn)。.getElement();只選擇一個(gè)元素,如果有多個(gè)符合要求的元素則返回第一個(gè)元素。如果你給.getElement();方法一個(gè)CSS類名作為參數(shù),你就會得到第一個(gè)有這個(gè)CSS類名的元素,而不是函數(shù)所有元素的數(shù)組。要選擇多個(gè)元素,則可以使用下面的.getElements();方法。
參考代碼:
復(fù)制代碼 代碼如下:

// 選擇ID為”body_wrap“的元素下面的第一個(gè)鏈接
$('body_wrap').getElement('a');
// 選擇ID為”body_wrap“的元素下面的ID為”special_anchor“的元素
$('body_wrap').getElement('#special_anchor');
// 選擇ID為”body_wrap“的元素下面第一個(gè)CSS類名為”special_anchor_class“的元素
$('body_wrap').getElement('.special_anchor_class');

參考代碼:
復(fù)制代碼 代碼如下:

<div id="body_wrap">
<a href="#">anchor</a>
<a href="#">another anchor</a>
<a id="special_anchor" href="#">special anchor</a>
<a class="special_anchor_class" href="#">special anchor</a>
<a class="special_anchor_class" href="#">another special anchor</a>
</div>

$$();
$$函數(shù)可以可以讓你快速選擇多個(gè)元素,并組成一個(gè)數(shù)組(一種你可以操作、獲取和以任何方式重新排序的列表)。你可以通過標(biāo)簽名(如div、a、img等)、或者ID或者是他們的各種組合來選擇多個(gè)元素。就像一個(gè)讀者指出的那樣,你可以用$$做很多事情,遠(yuǎn)遠(yuǎn)超出我們這里所介紹的。
參考代碼:
復(fù)制代碼 代碼如下:

// 選擇這個(gè)頁面中的所有div
$$('div');
// 選擇ID為”id_name的元素和所有的div
$$('#id_name', 'div');

參考代碼:
復(fù)制代碼 代碼如下:

<div>
<div>a div</div>
<span id="id_name">a span</span>
</div>

.getElements();
.getElements();和.getElement();非常類似,不過它返回所有符合要求的元素,并組成一個(gè)數(shù)組。你可以想使用.getElement();方法那樣使用.getElements();。
參考代碼:
復(fù)制代碼 代碼如下:

// 選擇ID為”body_wrap“的元素下面的所有鏈接
$('body_wrap').getElements('a');
// 選擇ID為”body_wrap“的元素下面的所有CSS類名為”special_anchor_class“的子元素
$('body_wrap').getElements('.special_anchor_class');

參考代碼:
復(fù)制代碼 代碼如下:

<div id="body_wrap">
<a href="#">anchor</a>
<a href="#">another anchor</a>
<a class="special_anchor_class" href="#">special anchor</a>
<a class="special_anchor_class" href="#">another special anchor</a>
</div>

用運(yùn)算符包含和排除結(jié)果
運(yùn)算符
MooTools 1.2支持幾種運(yùn)算符,可以讓你進(jìn)一步精簡你的選擇操作。你可以在.getElements();中使用這些運(yùn)算符來包含或者排除特定的結(jié)果。MooTools支持4種運(yùn)算符,每一種都可以用來通過名字(name)選擇一個(gè)input元素。
= : 等于
參考代碼:
//選擇name為”phone_number“的input元素
$('body_wrap').getElements('input[name=phone_number]');
^= : 以……開始
參考代碼:
// 選擇name以”phone“開頭的input元素
$('body_wrap').getElements('input[name^=phone]');
$= : 以……結(jié)束
參考代碼:
// 選擇name以數(shù)字(number)結(jié)束的input元素
$('body_wrap').getElements('input[name$=number]');
!= : 不等于
參考代碼:
// 選擇名字不等于”address“的input元素
$('body_wrap').getElements('input[name!=address]');
參考代碼:
<div id="body_wrap">
<input name="address" type="text" />
<input name="phone_number" type="text" /> <!-- 上面的所有示例代碼都將選中這個(gè)元素 -->
</div>
(Fdream注:input在這里只是作為一個(gè)例子,你同樣可以使用這種方式選擇其他元素,比如div、a等等。)
要使用運(yùn)算符,你必須首先指定元素的類型(比如這里的input),然后指定你要過濾的屬性(比如這里的name),再加上你的 運(yùn)算符,最后選擇你的過濾字符串。
基于元素順序的選擇器
even(偶數(shù)選擇)
通過這個(gè)簡單的選擇器,你可以選擇序號為偶數(shù)的元素。注意:這個(gè)選擇器從0開始計(jì)數(shù),因此第一個(gè)元素是偶數(shù)序的。
參考代碼:
// 選擇序號為偶數(shù)的div
$$('div:even');
參考代碼:
<div>Even</div><!-- 上面的代碼將選中這個(gè)元素 -->
<div>Odd</div>
<div>Even</div><!-- 上面的代碼將選中這個(gè)元素 -->
<div>Odd</div>
odd(奇數(shù)選擇)
和even一樣,只不過它選擇序號為奇數(shù)的元素。
參考代碼:
// 選擇所有序號為奇數(shù)的div
$$('div:odd');
參考代碼:
<div>Even</div>
<div>Odd</div><!-- 上面的代碼將選中這個(gè)元素 -->
<div>Even</div>
<div>Odd</div><!-- 上面的代碼將選中這個(gè)元素 -->
.getParent();
通過.getParent();方法,你可以得到一個(gè)元素的父元素(parent)。
參考代碼:
// 選擇ID為”child_id“的元素的父元素
$('child_id').getParent();
參考代碼:
<div id="parent_id"> <!-- 上面的腳本將返回這個(gè)元素-->
<div id="child_id">Even</div>
</div>
代碼舉例
任何MooTools UI開發(fā)都是從選擇器開始的。這里是一些非常簡單的例子,演示了怎么去使用選擇器操作DOM元素。
參考代碼:
// 設(shè)置所有span的背景顏色為#eee
$$('span').setStyle('background-color', '#eee');
// 設(shè)置所有序號為奇數(shù)的span的背景色為#eee
$$('span:odd').setStyle('background-color', '#eee');
// 設(shè)置ID為body_wrap的元素下的所有CSS類名為.middle_spans的span的背景色為#eee
$('body_wrap').getElements('.middle_spans').setStyle('background-color', '#eee');
參考代碼:
復(fù)制代碼 代碼如下:

<div id="body_wrap">
<span>Even</span>
<span class="middle_spans">Odd</span>
<span class="middle_spans">Even</span>
<span>Odd</span>
</div>

下載zip包并嘗試一下
這個(gè)zip包中包含了一個(gè)簡單的html文件、MooTools 1.2核心庫、一個(gè)外部js文件和上面你所看到的例子。

更多學(xué)習(xí)……

這并不意味著這是MooTools 1.2的選擇器的全部功能列表,這僅僅只是幫助你入門,告訴你MooTools給你提供了什么功能。要學(xué)習(xí)有關(guān)選擇器的更多東西,請參考下面的文檔:

MooTools Blog上有關(guān)$$選擇器的文章

這是mootools.net上非常好的一篇有關(guān)$$選擇器和介紹它的變化多端的blog文章。通過這個(gè)選擇器你可以做多到你無法相信的事情,這篇文章很值得一讀。

Slickspeed選擇器

這里有別人針對MooTools做的一個(gè)實(shí)驗(yàn),測量不同的庫在選擇元素時(shí)到底有多快。這對于它本身來說很cool,不過這些選擇器的例子非常有價(jià)值。這里所有的選擇器特性都可以通過$$方法實(shí)現(xiàn)。

W3C選擇器

MooTools也可以讓你利用偽選擇器的力量(就像上面的Slickspeed所證明的)。這里是W3C的一篇關(guān)于選擇器的文章,一定值得讀一遍(如果只有選擇器的列表對你有用的話)。我不確定MooTools的$$選擇器是不是支持這個(gè)頁面上的每一個(gè)單獨(dú)選擇器,但是至少是絕大部分。歡迎大家告訴我有關(guān)這方面的更多消息。

相關(guān)文章

  • Mootools 1.2教程 輸入過濾第一部分(數(shù)字)

    Mootools 1.2教程 輸入過濾第一部分(數(shù)字)

    今天我們來看看MooTools是怎樣使得過濾用戶輸入變得非常輕松。我們今天將講一些基本的數(shù)字過濾,明天再更深入地講講字符串過濾。
    2009-09-09
  • Mootools 1.2教程 Tooltips

    Mootools 1.2教程 Tooltips

    今天我們將來看一下MooTools綁定的Tooltip插件。通過“提示(Tips)”,你可以輕松地自定義一個(gè)包含一個(gè)標(biāo)題和內(nèi)容的工具提示,可以自定義樣式,自定義淡入淡出漸變效果。
    2009-09-09
  • Mootools 1.2教程(3) 數(shù)組使用簡介

    Mootools 1.2教程(3) 數(shù)組使用簡介

    在上一篇教程——《Mootools 1.2教程(2)——DOM選擇器》中,我們介紹了一下選擇器,其中有很多方法就會返回?cái)?shù)組(一個(gè)你可以對其中內(nèi)容進(jìn)行多種操作的特殊列表)。
    2009-09-09
  • Mootools 1.2教程 定時(shí)器和哈希簡介

    Mootools 1.2教程 定時(shí)器和哈希簡介

    在今天的教程中,我們將關(guān)注兩塊內(nèi)容:第一個(gè)就是.periodical();方法,然后我們再對hash做一個(gè)簡介。
    2009-09-09
  • MooBox 基于Mootools的對話框插件

    MooBox 基于Mootools的對話框插件

    這幾天, 利用晚上的閑暇時(shí)間, 寫了個(gè)mootools組件,原型來自于jQuery UI Dialog, 為防止重復(fù),就起了名字叫mooBox.
    2012-01-01
  • 通過Mootools 1.2來操縱HTML DOM元素

    通過Mootools 1.2來操縱HTML DOM元素

    今天我們來深入地學(xué)習(xí)一下如果操縱HTML元素。通過MooTools 1.2,你可以添加新元素到一個(gè)HTML頁面中,也可以刪除元素,以及改變?nèi)魏螛邮交蛘咴貐?shù),這些都非常容易。
    2009-09-09
  • Mootools 1.2教程(2) DOM選擇器

    Mootools 1.2教程(2) DOM選擇器

    今天開始本系列教程的第2講。在這一講中,我們會學(xué)習(xí)幾種選擇HTML元素的方法。在許多方面,這是MooTools用得最多最基本的。畢竟,要創(chuàng)建一個(gè)基于HTML元素的交互性用戶體驗(yàn),你必須首先把它們掌握在手中。
    2009-09-09
  • Mootools 1.2教程 選項(xiàng)卡效果(Tabs)

    Mootools 1.2教程 選項(xiàng)卡效果(Tabs)

    今天將不只是受限于這個(gè)庫和一些基本的編程知識,我們來做一個(gè)簡單的小項(xiàng)目。通過使用我們目前為止已經(jīng)學(xué)過的一些知識,有幾種方式來創(chuàng)建當(dāng)鼠標(biāo)移上去或者點(diǎn)擊時(shí)顯示相應(yīng)內(nèi)容的tab。
    2009-09-09
  • 基于mootools插件實(shí)現(xiàn)遮罩層新手引導(dǎo)

    基于mootools插件實(shí)現(xiàn)遮罩層新手引導(dǎo)

    公司項(xiàng)目有這個(gè)需求,剛好這段時(shí)間在學(xué)習(xí)了mootools,于是把功能寫成了mootools插件,個(gè)人感覺mootools在這方面比jquery強(qiáng)多了
    2012-05-05
  • Mootools 1.2教程(21)——類(二)

    Mootools 1.2教程(21)——類(二)

    在今天的教程中,我們將主要學(xué)習(xí)一下MooTools中類的實(shí)現(xiàn)和繼承(擴(kuò)展)。
    2009-09-09

最新評論