今天我们开始第五讲,在上一讲(《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>
分享到:
相关推荐
MooTools 是一个轻量级且功能强大的JavaScript库,它提供了一种优雅的方式来处理DOM操作、事件、动画效果以及Ajax交互。这个“mootools详细教程chm”包含了丰富的资源,旨在帮助开发者深入理解和熟练运用MooTools。 ...
在本文中,我们将探讨Mootools 1.2中的事件处理机制,这是制作交互式网页界面不可或缺的一环。首先,我们需要了解Mootools框架如何将事件处理与DOM元素结合起来,使得我们能够对用户的交互行为做出响应。 事件处理...
"MooTools教程.pdf"是本教程的主要部分,可能涵盖了以下内容: 1. **基础概念**:讲解MooTools的核心概念,如Class(类)、Element(元素)和Event(事件)对象,以及如何使用它们创建交互式的网页。 2. **DOM操作...
5. **事件处理**:MooTools的事件系统支持事件监听、事件代理和事件阻止。它还提供了模拟浏览器不支持的事件,如mousewheel。 6. **动画效果**:FX模块提供了强大的动画功能,可以对CSS属性进行平滑的过渡效果,如...
**MooTools 1.2 中文教程** MooTools 是一个高级、模块化、轻量级的JavaScript库,它提供了丰富的工具集,用于构建高效、可维护的Web应用程序。MooTools 1.2 版本是其一个重要版本,为开发者提供了许多改进和新特性...
### Mootools 1.4 事件处理:绑定、移除与触发 Mootools,一个功能强大且灵活的JavaScript库,提供了丰富的DOM操作、事件处理、动画效果等功能,深受前端开发者的喜爱。本文将深入解析Mootools 1.4版本中的事件处理...
本教程将深入探讨Mootools 1.2的关键概念、核心组件以及如何在实际项目中应用它们。 首先,Mootools 1.2的核心理念是模块化。它遵循CommonJS规范,允许开发者按需加载所需的功能,降低了页面加载时的资源消耗。通过...
这篇教程将深入讲解MooTools中的Element类及其相关方法。 1. **Element方法完全解析** - `$(selector)`:这个方法相当于`document.getElementById`,用于根据ID获取元素。例如,`$('myElement')`将返回ID为'...
在Mootools 1.2中,事件处理是通过`addEvent`和`fireEvent`实现的。`addEvent`允许将函数绑定到元素的特定事件上,如点击或鼠标悬停,而`fireEvent`则可以模拟触发这些事件。这种事件处理机制使得代码更加模块化,...
根据给定的文件内容,这份“Mootools教程.pdf”文档主要介绍了Mootools框架的基础知识点,包括类的创建和继承、对象的扩展、类型判断、实用函数的使用、定时器的管理和DOM操作等。下面是对这些知识点的详细解释: 1...
### Mootools中文教程知识点概览 #### 一、起步篇 Mootools是一个轻量级且功能强大的JavaScript库,其设计目标是为了简化浏览器端的编程。与Prototype类似,Mootools同样支持面向对象的编程方式,但在某些方面更加...
本教程将介绍如何创建和使用MooTools中的类。 首先,一个类是一个容器,它存储了变量(也称为属性)和函数(也称为方法),这些组合在一起构成了一个特定功能的单元。在MooTools中,我们使用`new Class`来定义一个...
5. **MooTools的OO特性** - MooTools的设计强调面向对象编程,`Element`类不仅提供操作DOM的方法,还允许对元素进行扩展,添加自定义的行为或属性。这使得代码更加模块化和可维护。 6. **兼容性和浏览器差异** - ...
2. **事件系统**:Mootools提供了完整的事件处理机制,包括`addEvent`(添加事件监听器)、`removeEvent`(移除事件监听器)和`fireEvent`(触发事件)等方法,支持DOM元素及自定义对象的事件处理。 3. **选择器...
4. **事件处理**:MooTools支持事件监听和触发,提供了一种优雅的方式来处理用户交互,如点击、滚动等事件。 5. **动画效果**:内置的Fx模块提供了平滑的CSS3动画效果,包括淡入淡出、移动、缩放等多种动画类型,且...
3. Mootools事件处理:`domready`事件、`mouseenter`和`mouseleave`事件。 4. Mootools方法:`.addEvents()`用于添加事件监听器,`.bind()`用于设置事件处理函数的上下文。 5. JavaScript函数:`showFunction`和`...
4. **事件处理**:Mootools的事件系统支持事件委托,允许在父元素上绑定事件处理器,处理子元素的事件,提高了性能。 5. **动画和效果**:Mootools提供了`Fx`模块,包含了一系列动画效果,如淡入淡出、滑动、大小...