mootools【一】- 起步篇
以前一直在用prototype.js,最近发现了mootools,据说也相当不错,它是个纯OO的javascript 框架,所以拿来学习学习,把学习经过记录下来。
粗略看了下,mootools很貌似prototype,所以用过prototype框架的人应该很容易上手的。
mootools提供的功能高度模块化,可以根据实际需要来裁剪。
它的核心库是Moo.js和Utility.js,Moo.js里包含了实现OO的基础类,Utility.js提供了最常用的工具函数的封装。
---------------------------Moo.js-------------------------------------
prototype.js里提供了如下形式来创建我们的对象:
var Cat = Class.create();
Person.prototype = {
initialize: function(name){
this.name = name;
}
};
var cat = new Cat ('kitty');
alert(cat.name);
对应,mootools使用如下形式:
var Cat = new Class({
initialize: function(name){
this.name = name;
}
});
var cat = new Cat ('kitty');
alert(cat.name);
恩,两者看起来很像,不过,好像mootools这种方式更加符合OO的习惯(不过也要看各人喜欢的啦)。
Class进行继承,mootools是这样做的:
var Animal = new Class({
initialize: function(name){
this.name = name;
}
});
var Cat = Animal.extend({
initialize: function(name,age){
this.parent(name); //调用Animal的initialize方法
this.age = age;
}
});
是的,相当好用。
Class.implement方法从功能上来理解是对已经定义好的类进行扩展,用法如下:
var Person = new Class({
initialize: function(name){
this.name = name;
}
});
Person.implement({
initialize: function(name,age){
this.name = name;
this.age = age;
},
myAction: function(){
alert(this.name+'--'+this.age);
}
});
var p = new Person('zarknight',24);
p.myAction();
这和java中的实现接口好像不是一个概念...
mootools对Object扩展了一个extend方法,它有两个参数,作用是复制第二个参数对象的所有属性到第一参数对象中去,同名属性将覆盖为第二个参数中的相应属性:
var firstOb = {
'name': 'John',
'lastName': 'Doe'
};
var secondOb = {
'age': '20',
'sex': 'male',
'lastName': 'Dorian'
};
Object.extend(firstOb, secondOb);
//firstOb将变成:
{
'name': 'John',
'lastName': 'Dorian',
'age': '20',
'sex': 'male'
};
---------------------------Moo.js-------------------------------------
$type
作用:基本上是对typeof的扩展,返回输入参数的类型
例子:
var x = $type("abcdefg");
返回值:
'element' - DOM
'textnode' - DOM 文本节点
'whitespace' - DOM 空白节点
'array' - 数组
'object' - 对象
'string' - 字符串
'number' - 数字
'boolean' - 布尔型
'function' - 函数
false - 如果是未定义或则不是以上列出的类型
$chk
作用:如果输入参数是数值(包括0)或是对象(不为null或undefined),则返回true,否则返回false
var x = $chk("abcde"); //true
var y = $chk(0); //true
var z = $(null); //false
$pick
作用:如果第一个参数对象存在,则返回这个对象;否则返回第二个参数对象
var x = $pick("openfdc","zarknight"); //openfdc
var y = $pick(null,"zarknight"); //zarknight
var z = $pick(1, 2); //1
$random
作用:产生一个介于(包括)指定的最大范围值和最小范围值之间的随机整数
var x = $random(1,100); //产生一个1~100之间的随机整数
$clear
作用:其实就是clearTimeout和clearInterval都调用一遍
var timer1 = setInterval("abc()",1000);
timer1 = $clear(timer1);
var timer2 = aFunc.delay(1000); //delay是mootools对Function的扩展,具体用法看mootools文档或我的后文...
timer2 = $clear(timer2);
另外,mootools往window对象里摆了这么些属性,用来作为检测浏览器类型的工具:
window.ie<
分享到:
相关推荐
比prototypejs更丰富、更强大的mootools.js插件 1.4.5 core下载。mootools.js可以生成较为复杂的、动态的网页交互效果,和jquery一样强大。。Mootools从Prototype.js中汲取了许多有益的设计理念,语法也和其极其类似...
MooTools是一款强大的JavaScript库,它提供了一套优雅的面向对象的编程接口和实用的工具集,便于开发者创建高效、可维护的Web应用程序。MooTools 1.4中文PDF手册与MooTools-Core-1.5.1.js是学习和使用MooTools的核心...
**MooTools 详解** MooTools 是一个轻量级且功能强大的JavaScript库,它提供了一种优雅的方式来处理DOM操作、事件、动画效果以及Ajax交互。这个“mootools详细教程chm”包含了丰富的资源,旨在帮助开发者深入理解和...
Mootools是一款强大的JavaScript库,它为Web开发者提供了丰富的功能和高效的工具,使得在浏览器端进行复杂的JavaScript编程变得更加便捷。Mootools 1.2.1是该库的一个版本,其API文档对于理解和使用这个库至关重要。...
在IT领域,JavaScript库MooTools是一个非常受欢迎的框架,用于增强网页的交互性和功能。MooTools提供了许多工具和组件,其中包括对于tree(树形结构)和table(表格)的处理,使得开发者能够轻松创建复杂的用户界面...
MooTools是一个简洁,模块化,面向对象的JavaScript框架。它能够帮助你更快,更简单地编写可扩展和兼容性强的JavaScript代码。Mootools从Prototype.js中汲取了许多有益的设计理念,语法也和其极其类似。但它提供的...
MooTools 是一个轻量级且模块化的JavaScript库,它为Web开发提供了丰富的功能和工具。这个"mootools开发手册中文版"是针对MooTools 1.1.js版本的详细指南,旨在帮助开发者更好地理解和使用这个JavaScript框架。本文...
MooTools是一个轻量级的JavaScript库,设计用于简化Web开发中的DOM操作、事件处理、动画效果以及Ajax交互。1.2.3是MooTools的一个稳定版本,它提供了丰富的功能集,同时保持了高性能和良好的浏览器兼容性。在本文中...
MooTools 是一个轻量级、模块化的JavaScript库,它为Web开发提供了强大的工具和功能。这个压缩包包含了MooTools的两个主要版本——v1.11和v1.2.1的相关文档,以及可能的HTML和JavaScript文件,帮助开发者理解和使用...
mootools框架入门教程 mootools框架是一个功能强大且灵活的JavaScript框架,它提供了许多实用的方法来简化DOM操作和ajax开发。下面将对mootools框架的Element篇进行详细的介绍。 Element篇 Element篇是mootools...
MooTools是一个轻量级的JavaScript库,以其模块化、可扩展性和高性能著称。它提供了许多实用工具和功能,使Web开发更为便捷。通过对"Mootools源码分析"的深入探讨,我们可以了解到这个框架的核心设计理念和实现机制...
MooTools是一个轻量级的JavaScript库,设计思想源自于Prototype,但两者在实现和功能上有许多不同之处。MooTools 1.2是该库的一个稳定版本,它提供了丰富的功能集,包括DOM操作、事件处理、动画效果、Ajax交互等。这...
在MooTools 1.2中,类是创建对象的基础,它允许你组织代码并封装数据,以便构建复杂的系统。本教程将介绍如何创建和使用MooTools中的类。 首先,一个类是一个容器,它存储了变量(也称为属性)和函数(也称为方法)...
MooTools 是一个轻量级且模块化的JavaScript库,它为Web开发提供了丰富的功能和工具。"mootools-release-1.11"是MooTools的一个特定版本,发布于2010年,旨在提供稳定性和兼容性的更新。这个版本在当时是一个重要的...
**MooTools 1.2 中文文档** MooTools 是一个轻量级且功能强大的JavaScript框架,设计用于简化Web开发中的DOM操作、事件处理、动画效果以及Ajax交互。MooTools 1.2 版本是其重要的里程碑,提供了许多优化和改进,以...
MooTools是一款强大的JavaScript库,它提供了一系列工具和方法,帮助开发者创建交互性强、响应迅速的Web应用程序。在本案例中,我们关注的是MooTools中的动态下拉菜单(Dropdown)实现,这是一个常见且实用的功能,...
MooTools Mocha UI 是一个基于MooTools JavaScript库的高级用户界面框架,专为Web 2.0时代设计。这个框架的主要目标是提供一种方式,让网页开发者能够创建出具有桌面应用程序般用户体验的交互式网页。MooTools本身是...
Mootools是一个强大的JavaScript库,它提供了许多功能,如DOM操作、动画效果、事件处理以及模块化开发等。在“mootools层拖动实现”这个主题中,我们将深入探讨如何利用Mootools库实现可拖动的div层。这对于创建交互...
在IT行业中,JavaScript库是构建交互式Web应用的重要工具,MooTools就是其中之一。MooTools是一个轻量级、模块化的JavaScript库,它提供了一系列强大的工具,帮助开发者更高效地编写高质量的代码。本篇文章将深入...