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

Mootools 1.2教程 事件處理

 更新時(shí)間:2009年09月15日 18:37:44   作者:  
我們學(xué)習(xí)了在MooTools 1.2中建立和使用函數(shù)的幾種不同方式。下一步就是理解事件了。和選擇器類似,事件也是建立互動(dòng)界面的一個(gè)重要部分。
今天我們開(kāi)始第五講,在上一講(《Mootools 1.2教程(4)——函數(shù)》)中,我們學(xué)習(xí)了在MooTools 1.2中建立和使用函數(shù)的幾種不同方式。下一步就是理解事件了。和選擇器類似,事件也是建立互動(dòng)界面的一個(gè)重要部分。一旦你掌握了一個(gè)元素,你需要去決定什么行為來(lái)觸發(fā)什么效果。先把效果留著以后在講,我們首先看一看中間步驟和一些常見(jiàn)的事件。
左鍵單擊事件
左鍵單擊事件是web開(kāi)發(fā)中最常見(jiàn)的事件。超鏈接識(shí)別點(diǎn)擊事件,然后把你帶到另外一個(gè)URL地址。MooTools能夠識(shí)別其他DOM元素上的點(diǎn)擊事件,在設(shè)計(jì)和功能上給了你極大的靈活性。給一個(gè)元素添加一個(gè)點(diǎn)擊事件的第一步:
參考代碼:
復(fù)制代碼 代碼如下:

// 通過(guò)$('id_name') 取得一個(gè)元素
// 用.addEvent添加事件
// ('click')定義了事件的類型
$('id_name').addEvent('click', function(){
// 在這里添加點(diǎn)擊事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the click event');
});

你也可以把這個(gè)函數(shù)從.addEvent();獨(dú)立出來(lái)來(lái)完成相同的事情:
參考代碼:
復(fù)制代碼 代碼如下:

var clickFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the click event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('click', clickFunction);
});

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

<body>
<div id="id_name"> <! -- this element now recognizes the click event -->
</div>
</body>

注意:和超鏈接識(shí)別點(diǎn)擊事件一樣,MooTools的點(diǎn)擊事件實(shí)際上也是識(shí)別“mouse up”,意味著當(dāng)你鼠標(biāo)松開(kāi)是發(fā)生,而不是鼠標(biāo)按下去的時(shí)候發(fā)生。這就給了用戶一個(gè)機(jī)會(huì)去改變他們的主意——只要在松開(kāi)之前把鼠標(biāo)的指針從點(diǎn)擊的元素上移開(kāi)就可以了。
鼠標(biāo)進(jìn)入和離開(kāi)事件
當(dāng)鼠標(biāo)停留在一個(gè)鏈接元素上時(shí),超級(jí)鏈接還識(shí)別“hover”事件。通過(guò)MooTools,你可以給其他的DOM元素也添加一個(gè)懸停事件。通過(guò)把這個(gè)事件分為鼠標(biāo)進(jìn)入和鼠標(biāo)離開(kāi)事件,你可以更加靈活地根據(jù)用戶的行為來(lái)操控DOM。
和以前一樣,我們要做的第一件事就是把一個(gè)事件附加到一個(gè)元素:
參考代碼:
復(fù)制代碼 代碼如下:

var mouseEnterFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the mouse enter event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('mouseenter', mouseEnterFunction);
});

鼠標(biāo)離開(kāi)事件也是同樣的,這個(gè)事件在鼠標(biāo)指針離開(kāi)一個(gè)元素時(shí)發(fā)生。
參考代碼:
復(fù)制代碼 代碼如下:

var mouseLeaveFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the mouse leave event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('mouseleave', mouseLeaveFunction);
});

刪除一個(gè)事件
總有一些時(shí)候,你一旦不再需要那些事件,于是你需要從一個(gè)元素上刪除一個(gè)事件。刪除一個(gè)事件和添加一個(gè)事件一樣容易,甚至連結(jié)構(gòu)都是類似的。
參考代碼:
// 和前一個(gè)示例一樣
// 只不過(guò)把.addEvent換成了.removeEvent
$('id_name').removeEvent('mouseleave', mouseLeaveFunction);
textarea或者input中的按鍵事件
MooTools也可以讓你識(shí)別文本域(textarea)和文本框(input)中的按鍵事件。其語(yǔ)法和我們上面看到的類似:
參考代碼:
復(fù)制代碼 代碼如下:

var function = keydownEventFunction () {
alert('This textarea can now recognize keystroke events');
};
window.addEvent('domready', function() {
$('myTextarea').addEvent('keydown', keydownEventFunction);
});

上面的代碼將會(huì)識(shí)別任何按鍵。要針對(duì)一個(gè)特定的按鍵,我們需要添加一個(gè)參數(shù),然后使用一個(gè)if語(yǔ)句:
參考代碼:
復(fù)制代碼 代碼如下:

// 注意函數(shù)括號(hào)中的“event”參數(shù)
var keyStrokeEvent = function(event){
// 下面的代碼是說(shuō):
// 如果按下的鍵為“k”,則做下面的事
if (event.key == "k") {
alert("This tutorial has been brought you by the letter k.")
};
}
window.addEvent('domready', function() {
$('myInput').addEvent('keydown', keyStrokeEvent);
});

如果需要其他的控制,比如“shift”鍵和“control”見(jiàn),語(yǔ)法略有一點(diǎn)不同:
參考代碼:
復(fù)制代碼 代碼如下:

var keyStrokeEvent = function(event){
// 下面代碼是說(shuō):
// 如果按下的鍵是“shift”,則做下面的事
if (event.shift) {
alert("You pressed shift.")
};
}
window.addEvent('domready', function() {
$('myInput').addEvent('keydown', keyStrokeEvent);
});

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

<div id="body_wrap">
<input id="myInput" type="text" />
</div>

示例
這里是上面我們寫(xiě)過(guò)的一些可以執(zhí)行的代碼:
注意:你可以在單擊示例上面試一下,不過(guò)不是在上面松開(kāi)鼠標(biāo),而是把鼠標(biāo)一直按著從區(qū)塊上離開(kāi),然后再松開(kāi)。注意一下它沒(méi)有觸發(fā)點(diǎn)擊事件。
參考代碼:
復(fù)制代碼 代碼如下:

var keyStrokeEvent = function(event){
// 下面的代碼是說(shuō):
// 如果按下的鍵為“k”,則做下面的事
if (event.key == 'k') {
alert("This Mootorial was brought to you by the letter 'k.'")
};
}
var mouseLeaveFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the mouse leave event');
}
var mouseEnterFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the mouse enter event');
}
var clickFunction = function(){
// 在這里添加事件發(fā)生時(shí)你要執(zhí)行的任何代碼
alert('this element now recognizes the click event');
}
window.addEvent('domready', function() {
$('click').addEvent('click', clickFunction);
$('enter').addEvent('mouseenter', mouseEnterFunction);
$('leave').addEvent('mouseleave', mouseLeaveFunction);
$('keyevent').addEvent('keydown', keyStrokeEvent);
});

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

<div id="click" class="block">左鍵單擊(Click)</div><br />
<div id="enter" class="block">鼠標(biāo)進(jìn)入(Mouse Enter)</div><br />
<div id="leave" class="block">鼠標(biāo)離開(kāi)(Mouse Leave)</div><br />
<input id="keyevent" type="text" value="請(qǐng)輸入字符'k'" />

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

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

包含MooTools 1.2核心庫(kù)、一個(gè)外部JavaScript文件、一個(gè)簡(jiǎn)單的html頁(yè)面和一個(gè)css文件。

更多關(guān)于事件的資料

MooTools給了你更多的關(guān)于事件的控制方法,比我們這里講得要多得多。要學(xué)習(xí)更多內(nèi)容,請(qǐng)查看下面幾個(gè)鏈接:

相關(guān)文章

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

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

    公司項(xiàng)目有這個(gè)需求,剛好這段時(shí)間在學(xué)習(xí)了mootools,于是把功能寫(xiě)成了mootools插件,個(gè)人感覺(jué)mootools在這方面比jquery強(qiáng)多了
    2012-05-05
  • 基于mootools的圓角邊框擴(kuò)展代碼

    基于mootools的圓角邊框擴(kuò)展代碼

    做圓角邊框一般有兩種方法,背景圖片或者DIV+CSS拼出來(lái)。
    2010-02-02
  • MooTools 頁(yè)面滾動(dòng)浮動(dòng)層智能定位實(shí)現(xiàn)代碼

    MooTools 頁(yè)面滾動(dòng)浮動(dòng)層智能定位實(shí)現(xiàn)代碼

    MooTools 頁(yè)面滾動(dòng)浮動(dòng)層智能定位實(shí)現(xiàn)代碼,需要的朋友可以參考下。
    2011-08-08
  • Mootools 1.2教程 設(shè)置和獲取樣式表屬性

    Mootools 1.2教程 設(shè)置和獲取樣式表屬性

    今天,我們來(lái)看一下如何通過(guò)MooTools 1.2和我們以前幾講中的內(nèi)容來(lái)操作樣式,這將給你在UI上帶來(lái)很大的控制權(quán)。
    2009-09-09
  • Mootools 1.2教程 事件處理

    Mootools 1.2教程 事件處理

    我們學(xué)習(xí)了在MooTools 1.2中建立和使用函數(shù)的幾種不同方式。下一步就是理解事件了。和選擇器類似,事件也是建立互動(dòng)界面的一個(gè)重要部分。
    2009-09-09
  • Mootools 1.2教程 選項(xiàng)卡效果(Tabs)

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

    今天將不只是受限于這個(gè)庫(kù)和一些基本的編程知識(shí),我們來(lái)做一個(gè)簡(jiǎn)單的小項(xiàng)目。通過(guò)使用我們目前為止已經(jīng)學(xué)過(guò)的一些知識(shí),有幾種方式來(lái)創(chuàng)建當(dāng)鼠標(biāo)移上去或者點(diǎn)擊時(shí)顯示相應(yīng)內(nèi)容的tab。
    2009-09-09
  • Mootools 1.2教程 滑動(dòng)效果(Slide)

    Mootools 1.2教程 滑動(dòng)效果(Slide)

    今天繼續(xù)我們的Mootools 1.2教程的第23課,我們今天來(lái)講一下Fx插件中的Fx.Slide。通過(guò)該插件,可以讓你把內(nèi)容以滑動(dòng)的方式顯示出來(lái)。它使用起來(lái)非常簡(jiǎn)單,是你UI工具箱中一個(gè)很好的工具。
    2009-09-09
  • Mootools 1.2教程 同時(shí)進(jìn)行多個(gè)形變動(dòng)畫(huà)

    Mootools 1.2教程 同時(shí)進(jìn)行多個(gè)形變動(dòng)畫(huà)

    今天我們來(lái)學(xué)習(xí)一下Fx.Elements插件,這是一個(gè)基于Fx.Morph的插件。與應(yīng)用于單個(gè)元素不同的是,F(xiàn)x.Elements可以允許你一次性給多個(gè)元素添加動(dòng)畫(huà)。
    2009-09-09
  • Mootools 1.2教程 正則表達(dá)式

    Mootools 1.2教程 正則表達(dá)式

    今天我們將先簡(jiǎn)要地看一下正則表達(dá)式,然后再看一下MooTools提供的一些讓正則表達(dá)式更容易使用的功能。
    2009-09-09
  • Mootools 1.2 手風(fēng)琴(Accordion)教程

    Mootools 1.2 手風(fēng)琴(Accordion)教程

    繼續(xù)我們的“更多”(More)庫(kù)里面的插件教程,今天我們來(lái)學(xué)習(xí)一下可能是最流行最受歡迎的插件——手風(fēng)琴。
    2009-09-09

最新評(píng)論