Class

Базовий Class фреймворку MooTools.

Class Method: constructor

Синтаксис:

var MyClass = new Class(properties);

Аргументи:

  1. properties - Can be one of the following types:
    • (object) Колекція властивостей, які застосовуються до Class. Також приймає деякі спеціальні властивості, такі як Extends, Implements та initialize (див. нижче).
    • (function) Ініціалізація function (див. нижче).

Property: Extends

  • (class) Class, який this class розширить.

Методи this Class, які мають ту саму назву, що й Extends Class, матимуть властивість parent, яка дозволяє викликати інший перевизначений метод. Властивість Extends повинна бути першою властивістю у визначенні class.

Property: Implements

  • (class) Властивості переданого Class будуть скопійовані у цільовий Class.
  • (array) Масив Classes, властивості яких будуть скопійовані у this Class.

Implements схоже на Extends, за винятком того, що воно приймає властивості з одного або кількох інших classes без наслідування. Корисно при реалізації набору властивостей за замовчуванням у кількох Classes. Властивість Implements повинна йти після Extends, але передforми всіма іншими властивостями.

Property: initialize

  • (function) Ініціалізація function буде constructor for this class при створенні екземплярів new.

Property: toElement

  • (function) Метод, який returns елемент. Цей метод буде автоматично викликаний при передачі екземпляра class у document.id function.

Повертає:

  • (class) Створений Class.

Приклади:

Class Приклад:

var Cat = new Class({
    initialize: function(name){
        this.name = name;
    }
});
var myCat = new Cat('Micia');
alert(myCat.name); // alerts 'Micia'
 
var Cow = new Class({
    initialize: function(){
        alert('moooo');
    }
});

Extends Приклад:

var Animal = new Class({
    initialize: function(age){
        this.age = age;
    }
});
var Cat = new Class({
    Extends: Animal,
    initialize: function(name, age){
        this.parent(age); // calls initalize method of Animal class
        this.name = name;
    }
});
var myCat = new Cat('Micia', 20);
alert(myCat.name); // alerts 'Micia'.
alert(myCat.age); // alerts 20.

Implements Приклад:

var Animal = new Class({
    initialize: function(age){
        this.age = age;
    }
});
var Cat = new Class({
    Implements: Animal,
    setName: function(name){
        this.name = name
    }
});
var myAnimal = new Cat(20);
myAnimal.setName('Micia');
alert(myAnimal.name); // alerts 'Micia'.

Class Method: implement

Implements передані властивості у базові прототипи Class, змінюючи базовий Class. Те саме, що й створення new Class з властивістю Implements, але зручно, коли потрібно modify існуючі classes.

Синтаксис:

MyClass.implement(properties);

Аргументи:

  1. properties - (object) Властивості для додавання до базового Class.

Приклади:

var Animal = new Class({
    initialize: function(age){
        this.age = age;
    }
});
Animal.implement({
    setName: function(name){
        this.name = name;
    }
});
var myAnimal = new Animal(20);
myAnimal.setName('Micia');
alert(myAnimal.name); // alerts 'Micia'

Эта документация распостраняется на правах Attribution-NonCommercial-ShareAlike 3.0 License.
Оригинал документации на английском.
© Linux.ria.com, 2008-2026