天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

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

今天,我們?cè)趤砜纯慈绾问褂脭?shù)組來管理DOM元素。
基本方法
.each();
在處理數(shù)組時(shí),.each();方法是你最好的朋友。它提供了一種很容易的方法來遍歷數(shù)組的每個(gè)元素,如果有需要還可以對(duì)其中的元素進(jìn)行任何邏輯處理。例如,我們可以假設(shè)你需要為頁(yè)面中的每個(gè)div對(duì)象調(diào)用alert方法:
參考代碼: 復(fù)制代碼 代碼如下:
$$('div').each(function() {
alert('a div');
});

如果使用下面的HTML代碼,上面的JavaScript代碼將彈出兩個(gè)alert對(duì)話框,每個(gè)div一個(gè)。
參考代碼: 復(fù)制代碼 代碼如下:
<div>One</div>
<div>Two</div>

.each();方法不需要你使用$$方法。創(chuàng)建一個(gè)數(shù)組的另一種方式(就像我們昨天講到過的)是使用.getElements();方法。
參考代碼: 復(fù)制代碼 代碼如下:
$('body_wrap').getElements('div').each(function() {
alert('a div');
});

參考代碼: 復(fù)制代碼 代碼如下:
<div id="body_wrap">
<div>One</div>
<div>Two</div>
</div>

還有另外一種方法來完成這個(gè)相同的任務(wù),就是把這個(gè)數(shù)組賦值給一個(gè)變量,然后對(duì)那個(gè)變量使用.each();方法:
參考代碼: 復(fù)制代碼 代碼如下:
// 首先你需要通過語(yǔ)句”var VARIABLE_NAME“來聲明一個(gè)變量
// 然后用等于運(yùn)算符”=“來給這個(gè)變量賦值
// 在這個(gè)例子中,是一個(gè)包含div元素的數(shù)組
var myArray = $('body_wrap').getElements('div');
// 現(xiàn)在你就可以把這個(gè)變量當(dāng)數(shù)組選擇器使用了
myArray.each(function() {
alert('a div');
});

最后,如果你可能想把你的函數(shù)從選擇器中獨(dú)立出來。我們會(huì)在明天的關(guān)于使用函數(shù)的教程中更深入地講解這個(gè)問題。不過,現(xiàn)在我們可以創(chuàng)建一個(gè)非常簡(jiǎn)單的示例:
參考代碼: 復(fù)制代碼 代碼如下:
var myArray = $('body_wrap').getElements('div');
// 要?jiǎng)?chuàng)建一個(gè)函數(shù),你可以像剛才一樣聲明一個(gè)變量,然后給它命名
// 在等號(hào)后面使用”function()“來聲明這個(gè)變量為一個(gè)函數(shù)
// 最后,在 { 和 }之間寫入你的函數(shù)代碼
var myFunction = function() {
alert('a div');
};
// 現(xiàn)在你就可以在.each();.方法里面調(diào)用剛才的函數(shù)了
myArray.each(myFunction);

注意:當(dāng)你像剛才那樣在.each();.方法里面調(diào)用函數(shù)時(shí),你不需要給函數(shù)名加上引號(hào)。
復(fù)制一個(gè)數(shù)組
$A
MooTools提供了一個(gè)簡(jiǎn)單的方式――通過$A函數(shù)來復(fù)制一個(gè)數(shù)組。讓我們像剛才那樣使用變量創(chuàng)建一個(gè)數(shù)組:
參考代碼: 復(fù)制代碼 代碼如下:
// 創(chuàng)建你的數(shù)組變量
var myArray = $('body_wrap').getElements('div');

復(fù)制一個(gè)數(shù)組(創(chuàng)建該數(shù)組的副本):
參考代碼: 復(fù)制代碼 代碼如下:
// 建立一個(gè)新的變量名,命名為”myCopy“,然后把”myArray“的副本賦值給它
var myCopy = $A(myArray );

從數(shù)組中獲取指定的元素
.getLast();
.getLast();方法返回?cái)?shù)組中最后一個(gè)元素。首先我們建立一個(gè)數(shù)組:
參考代碼: 復(fù)制代碼 代碼如下:
var myArray = $('body_wrap').getElements('div');

現(xiàn)在我們可以從這個(gè)數(shù)組中獲取最后一個(gè)元素:
參考代碼: 復(fù)制代碼 代碼如下:
var lastElement = myArray.getLast();

變量lastElement現(xiàn)在的值就是數(shù)組myArray中的最后一個(gè)元素了。
.getRandom();
和.getLast();一樣,不過它隨機(jī)從數(shù)組中取得一個(gè)元素:
參考代碼: 復(fù)制代碼 代碼如下:
var randomElement = myArray.getRandom();

變量randomElement現(xiàn)在的值就是從數(shù)組myArray中隨機(jī)選取的一個(gè)元素了。
向數(shù)組中添加一個(gè)元素
.include();
通過這個(gè)方法,你可以給數(shù)組添加另外一個(gè)元素。只要把元素選擇器傳給.include();方法,它就會(huì)包含到你的數(shù)組中。我們使用下面的HTML代碼:
參考代碼: 復(fù)制代碼 代碼如下:
<div id="body_wrap">
<div>one</div>
<div>two</div>
<span id="add_to_array">add to array</span>
</div>

我們可以像以前那樣調(diào)用”body_wrap“下面的所有div一樣來創(chuàng)建一個(gè)數(shù)組:
參考代碼: 復(fù)制代碼 代碼如下:
var myArray = $('body_wrap').getElements('div');

要把另外一個(gè)元素添加到這個(gè)數(shù)組中,首先你需要把這個(gè)元素賦值給一個(gè)變量,然后使用include方法:
參考代碼: 復(fù)制代碼 代碼如下:
// 首先把你的元素賦值給一個(gè)變量
var newToArray = $('add_to_array');
// 然后把它添加到數(shù)組
myArray.include(newToArray);

現(xiàn)在,這個(gè)數(shù)組就同時(shí)包含div和span元素了。
.combine();
和.include();方法一樣,不過它可以讓你把一個(gè)數(shù)組添加到一個(gè)已經(jīng)存在的數(shù)組中,而不用擔(dān)心有重復(fù)的內(nèi)容。假設(shè)我們現(xiàn)在從下面的HTML中取得了兩個(gè)數(shù)組:
參考代碼: 復(fù)制代碼 代碼如下:
<div id="body_wrap">
<div>one</div>
<div>two</div>
<span class="class_name">add to array</span>
<span class="class_name">add to array, also</span>
<span class="class_name">add to array, too</span>
</div>

我們可以這樣建立兩個(gè)數(shù)組:
參考代碼: 復(fù)制代碼 代碼如下:
// 就像我們以前那樣建立你的數(shù)組
var myArray= $('body_wrap').getElements('div');
// 然后建立一個(gè)所有CSS類名為.class_name的元素?cái)?shù)組
var newArrayToArray = $$('.class_name');

現(xiàn)在我們可以使用.combine();方法來合并兩個(gè)數(shù)組,這個(gè)方法會(huì)自己處理重復(fù)的元素,因此我們不需要處理:
參考代碼: 復(fù)制代碼 代碼如下:
// 把數(shù)組newArrayToArray合并到數(shù)組myArray中
myArray.combine(newArrayToArray );

現(xiàn)在myArray就包含了newArraytoArray中的所有元素。
代碼示例
數(shù)組可以讓你遍歷包含所有項(xiàng)目的列表,并對(duì)每個(gè)元素執(zhí)行相同的代碼。在這個(gè)例子中,注意變量”item“作為當(dāng)前元素的替代符的使用。
參考代碼: 復(fù)制代碼 代碼如下:
// 創(chuàng)建一個(gè)數(shù)組,這個(gè)數(shù)組包含”body_wrap“里面所有CSS類名為.class_name的元素
var myArray = $('body_wrap').getElements('.class_name');
// 首先建立一個(gè)要添加到數(shù)組中的元素
var addSpan = $('addtoarray');
// 然后建立一個(gè)要合并的數(shù)組
var addMany = $$('.addMany');
// 現(xiàn)在我們把元素addSpan加入到數(shù)組中
myArray.include(addSpan);
// 然后合并數(shù)組addMany到myArray中
myArray.combine(addMany);
// 建立一個(gè)需要對(duì)數(shù)組中的每個(gè)元素都要執(zhí)行的函數(shù)
var myArrayFunction = function(item) {
// item現(xiàn)在指向數(shù)組中的當(dāng)前元素
item.setStyle('background-color', '#eee');
}
// 現(xiàn)在對(duì)數(shù)組中的每個(gè)項(xiàng)目調(diào)用myArrayFunction函數(shù)
myArray.each(myArrayFunction);

參考代碼: 復(fù)制代碼 代碼如下:
<div id="body_wrap">
<div class="class_name">one</div><!-- this has gray background -->
<div>two</div>
<div class="class_name">three</div><!-- this has gray background -->
<span id="addtoarray">add to array</span> <!-- this has gray background -->
<br /><span class="addMany">one of many</span> <!-- this has gray background -->
<br /><span class="addMany">two of many</span> <!-- this has gray background -->
</div>

延伸學(xué)習(xí)

這個(gè)教程并沒有打算涵蓋你能對(duì)數(shù)組做的全部事情,但是希望能夠給你一個(gè)參考,告訴你MooTools提供了一些什么功能。要學(xué)習(xí)更多關(guān)于數(shù)組的東西,請(qǐng)仔細(xì)閱讀這些內(nèi)容:

  • 文檔中的數(shù)組部分
  • 這個(gè)頁(yè)面中有許多關(guān)于JavaScript數(shù)組的信息

下載一個(gè)包含你開始所需要的所有東西的zip包

包括一個(gè)簡(jiǎn)單的html文件、MooTools 1.2核心庫(kù)、一個(gè)外部JavaScript文件、一個(gè)css文件和上面的所有例子。

JavaScript技術(shù)Mootools 1.2教程(3) 數(shù)組使用簡(jiǎn)介,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 被老头下药玩好爽 | 久久麻豆亚洲AV成人无码国产 | 国产精品亚洲精品久久国语 | 菠萝菠萝蜜高清观看在线 | 伊人久久中文大香线蕉综合 | 理论片午午伦夜理片2021 | 亚洲综合香蕉在线视频 | 精品无码久久久久久国产百度 | 久久青青草原精品国产软件 | 出租屋交换人妻 全文 | 国产AV精品一区二区三区漫画 | 久久性生大片免费观看性 | 男人就爱吃这套下载 | 亚洲视频在线观看免费 | 一本道无码v亚洲 | a三级黄色片 | 亚洲欧美综合视频 | 在线播放日韩欧美亚洲日本 | 午夜AV内射一区二区三区红桃视 | 欧美黑人巨大videos免费 | xxx在线播放 | 第一次玩老妇真实经历 | 一级毛片两人添下面 | 国产成人一区二区三区在线观看 | 91精品国产入口 | 中文字幕亚洲男人的天堂网络 | 国产小视频免费在线观看 | 无码AV熟妇素人内射V在线 | 日本视频一区二区免费观看 | 手机在线免费观看毛片 | 欧美性喷潮xxxx | 久久99热狠狠色一区二区 | 九九热这里只有国产精品 | 办公室中文BD | 亚洲精品视频免费在线观看 | 99视频精品在线 | 国产午夜免费不卡精品理论片 | 国产爱豆果冻传媒在线观看视频 | chinese学生gv video| 果冻传媒mv国产陈若瑶主演 | 亚洲精品视频在线观看免费 |