OpenLayers. Как изменить Base Layer и Overlays?


При использовании OpenLayers в большистве случаев нужно изменить стандартные заголовки в LayerSwitcher. Например, на русский или, что еще более вероятно — на мультиязчный вариант.

К сожалению, стандартными средстами OpenLayer добиться результата нельзя — как бы странно это не было — но в библиотеке нет метода, при помощи которого можно изменить указаные записи.

Но, есть один хитрый метод, о котором сейчас пойдет речь. Итак:

var map = (OpenLayers.Map );
var layerswitcher = (OpenLayers.Control.LayerSwitcher) 
OpenLayers.Lang[OpenLayers.Lang.getCode()]['Base Layer'] = "My base label";
OpenLayers.Lang[OpenLayers.Lang.getCode()]['Overlays'] = "My over label";
// на случай, если нужно удалить экземпляр ране добавленный LayerSwitcher
map.removeControl( layerswitcher );
map.addControl( new OpenLayers.Control.LayerSwitcher( { /* . . .  */ } ) );
,

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *