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

Mootools 1.2教程 事件處理

今天我們開始第五講,在上一講(《Mootools 1.2教程(4)――函數》)中,我們學習了在MooTools 1.2中建立和使用函數的幾種不同方式。下一步就是理解事件了。和選擇器類似,事件也是建立互動界面的一個重要部分。一旦你掌握了一個元素,你需要去決定什么行為來觸發什么效果。先把效果留著以后在講,我們首先看一看中間步驟和一些常見的事件。
左鍵單擊事件
左鍵單擊事件是web開發中最常見的事件。超鏈接識別點擊事件,然后把你帶到另外一個URL地址。MooTools能夠識別其他DOM元素上的點擊事件,在設計和功能上給了你極大的靈活性。給一個元素添加一個點擊事件的第一步:
參考代碼:
復制代碼 代碼如下:
// 通過$('id_name') 取得一個元素
// 用.addEvent添加事件
// ('click')定義了事件的類型
$('id_name').addEvent('click', function(){
// 在這里添加點擊事件發生時你要執行的任何代碼
alert('this element now recognizes the click event');
});

你也可以把這個函數從.addEvent();獨立出來來完成相同的事情:
參考代碼:
復制代碼 代碼如下:
var clickFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
alert('this element now recognizes the click event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('click', clickFunction);
});

參考代碼:
復制代碼 代碼如下:
<body>
<div id="id_name"> <! -- this element now recognizes the click event -->
</div>
</body>

注意:和超鏈接識別點擊事件一樣,MooTools的點擊事件實際上也是識別“mouse up”,意味著當你鼠標松開是發生,而不是鼠標按下去的時候發生。這就給了用戶一個機會去改變他們的主意――只要在松開之前把鼠標的指針從點擊的元素上移開就可以了。
鼠標進入和離開事件
當鼠標停留在一個鏈接元素上時,超級鏈接還識別“hover”事件。通過MooTools,你可以給其他的DOM元素也添加一個懸停事件。通過把這個事件分為鼠標進入和鼠標離開事件,你可以更加靈活地根據用戶的行為來操控DOM。
和以前一樣,我們要做的第一件事就是把一個事件附加到一個元素:
參考代碼:
復制代碼 代碼如下:
var mouseEnterFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
alert('this element now recognizes the mouse enter event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('mouseenter', mouseEnterFunction);
});

鼠標離開事件也是同樣的,這個事件在鼠標指針離開一個元素時發生。
參考代碼:
復制代碼 代碼如下:
var mouseLeaveFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
alert('this element now recognizes the mouse leave event');
}
window.addEvent('domready', function() {
$('id_name').addEvent('mouseleave', mouseLeaveFunction);
});

刪除一個事件
總有一些時候,你一旦不再需要那些事件,于是你需要從一個元素上刪除一個事件。刪除一個事件和添加一個事件一樣容易,甚至連結構都是類似的。
參考代碼:
// 和前一個示例一樣
// 只不過把.addEvent換成了.removeEvent
$('id_name').removeEvent('mouseleave', mouseLeaveFunction);
textarea或者input中的按鍵事件
MooTools也可以讓你識別文本域(textarea)和文本框(input)中的按鍵事件。其語法和我們上面看到的類似:
參考代碼:
復制代碼 代碼如下:
var function = keydownEventFunction () {
alert('This textarea can now recognize keystroke events');
};
window.addEvent('domready', function() {
$('myTextarea').addEvent('keydown', keydownEventFunction);
});

上面的代碼將會識別任何按鍵。要針對一個特定的按鍵,我們需要添加一個參數,然后使用一個if語句:
參考代碼:
復制代碼 代碼如下:
// 注意函數括號中的“event”參數
var keyStrokeEvent = function(event){
// 下面的代碼是說:
// 如果按下的鍵為“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”見,語法略有一點不同:
參考代碼:
復制代碼 代碼如下:
var keyStrokeEvent = function(event){
// 下面代碼是說:
// 如果按下的鍵是“shift”,則做下面的事
if (event.shift) {
alert("You pressed shift.")
};
}
window.addEvent('domready', function() {
$('myInput').addEvent('keydown', keyStrokeEvent);
});

參考代碼:
復制代碼 代碼如下:
<div id="body_wrap">
<input id="myInput" type="text" />
</div>

示例
這里是上面我們寫過的一些可以執行的代碼:
注意:你可以在單擊示例上面試一下,不過不是在上面松開鼠標,而是把鼠標一直按著從區塊上離開,然后再松開。注意一下它沒有觸發點擊事件。
參考代碼:
復制代碼 代碼如下:
var keyStrokeEvent = function(event){
// 下面的代碼是說:
// 如果按下的鍵為“k”,則做下面的事
if (event.key == 'k') {
alert("This Mootorial was brought to you by the letter 'k.'")
};
}
var mouseLeaveFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
alert('this element now recognizes the mouse leave event');
}
var mouseEnterFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
alert('this element now recognizes the mouse enter event');
}
var clickFunction = function(){
// 在這里添加事件發生時你要執行的任何代碼
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);
});

參考代碼:
復制代碼 代碼如下:
<div id="click" class="block">左鍵單擊(Click)</div><br />
<div id="enter" class="block">鼠標進入(Mouse Enter)</div><br />
<div id="leave" class="block">鼠標離開(Mouse Leave)</div><br />
<input id="keyevent" type="text" value="請輸入字符'k'" />

更多學習……

下載一個包含你開始所需要的所用東西的zip包

包含MooTools 1.2核心庫、一個外部JavaScript文件、一個簡單的html頁面和一個css文件。

更多關于事件的資料

MooTools給了你更多的關于事件的控制方法,比我們這里講得要多得多。要學習更多內容,請查看下面幾個鏈接:

  • MooTools文檔中的Events部分
  • MooTools文檔中的Element.Events部分
  • 還有,閱讀一下w3school網站上關于JavaScript事件的內容

JavaScript技術Mootools 1.2教程 事件處理,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲国产精品一区二区动图 | 色悠久久久久综合网小说 | 亚洲AV蜜桃永久无码精品红樱桃 | 欧美eee114 | 亚洲中文字幕无码一久久区 | 啪啪激情婷婷久久婷婷色五月 | 100国产精品人妻无码 | 97人妻无码AV碰碰视频 | 免费 高清 中文在线观看 | 69日本xxⅹxxxxx18 | 国产精品九九久久 | 艳鉧动漫片1~6全集在线 | 在线自拍综合亚洲欧美 | 女的把腿张开男的往里面插 | 忘忧草在线影院WWW日本动漫 | 美女扣逼软件 | 中文字幕不卡一区二区三区 | 欧美九十老太另类 | 九九久久国产 | 99久久就热视频精品草 | 亚洲免费国产在线日韩 | 中文中幕无码亚洲视频 | 国产成人免费观看在线视频 | 久久精品国产久精国产果冻传媒 | 天天拍拍国产在线视频 | 久久久无码精品亚洲A片软件 | 父皇轻点插好疼H限 | 芳草地在线观看免费视频 | 国产精品久久人妻无码蜜 | 午夜DY888国产精品影院 | 青青草伊人网 | 成年人视频免费在线观看 | 亚洲精品成人a | 乌克兰肛交影视 | 日韩专区亚洲国产精品 | 国产综合18久久久久久软件 | 忘忧草研究所 麻豆 | 99久久精品免费看国产免费 | 97精品在线观看 | av56788成 人影院| 人妻夜夜爽天天爽三区麻豆AV网站 |