Страница 1 из 1

OpenLayers: модификация классов

Добавлено: 29 июл 2011, 21:26
Denis Rykov
Иногда бывают ситуации, когда необходимо изменить поведение того или иного класса библиотеки. Можно, конечно, это сделать напрямую в исходниках, но тогда все изменения будут потеряны при обновлении библиотеки. Чтобы этого измежать достаточно воспользоваться одним из 3 способов.

1. Создание подкласса

Код: Выделить всё

MySelectFeature = OpenLayers.Class(OpenLayers.Control.SelectFeature, {
    select: function() { 
     ...
    }
});
2. Модификация метода

Код: Выделить всё

OpenLayers.Control.SelectFeature.prototype.select = function() { ... }
3. Передача измененного метода в параметрах конструктора

Код: Выделить всё

var myc = new OpenLayers.Control.SelectFeature({select: function() { } });