mootools框架【二】-Core篇: 方法完全解析

本文详细介绍了MooTools JavaScript库的核心组件Moo.js和Utility.js。主要内容包括使用Class构建对象的方法、继承机制、类扩展技巧以及MooTools提供的实用工具函数。此外还涉及了类型检测、条件判断等常用功能。

mootools【二】- Core 

说明: Core 类中的核心库是Moo.js和Utility.js,Moo.js里包含了实现OO的基础类,Utility.js提供了最常用的工具函数的封装。

 

---------------------------Moo.js-------------------------------------

 

1. mootools使用如下形式构建对象:

var Cat  = new Class({

    initialize: function(name){

        this.name = name;

    }

});

    

var cat = new Cat ('kitty');

alert(cat.name);

 

2. 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;

    }

 });

 

3. 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();

 

    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-------------------------------------

4. $type

作用:基本上是对typeof的扩展,返回输入参数的类型

例子:

 var x = $type("abcdefg");

返回值:

 'element' - DOM

 'textnode' - DOM 文本节点

 'whitespace' - DOM 空白节点

 'array' - 数组

 'object' - 对象

 'string' - 字符串

   'number' - 数字

   'boolean' - 布尔型

 'function' - 函数

     false - 如果是未定义或则不是以上列出的类型

 

5. $chk

作用:如果输入参数是数值(包括0)或是对象(不为null或undefined),则返回    true,否则返回false

例子:

    var x = $chk("abcde");  //true

    var y = $chk(0);        //true

    var z = $(null);         //false

 

6. $pick

作用:如果第一个参数对象存在(如果为null则也认为为空对象,即不存在的对象),则返回这个对象;否则返回第二个参数对象

例子:

  var x = $pick("openfdc","zarknight");  //openfdc

  var y = $pick(null,"zarknight");       //zarknight

      var z = $pick(1, 2);                 //1

 

7. $random

作用:产生一个介于(包括)指定的最大范围值和最小范围值之间的随机整数

例子:

     var x = $random(1,100);   //产生一个1~100之间的随机整数

 

8. $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

window.ie6

window.ie7

window.khtml

window.gecko

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值