Как я могу удалить стандартные средства управления в OpenLayers-карте?

Я использую OpenLayers и хочу создать другое управление навигации в верхней левой стороне. Я знаю, как добавить Средства управления, но эта навигация добавляется в значении по умолчанию при создании OpenLayers-карты. Таким образом, я хочу удалить то Управление, добавить собственное. Я уже знаю, что управлением по умолчанию является OpenLayers. Управление. PanZoom.

11
задан Mnementh 9 August 2010 в 15:34
поделиться

1 ответ

Объект map имеет свойство controls, которое представляет собой массив объектов OpenLayers.Control. Если это свойство не задано явно, то OpenLayers будет считать, что вы хотите использовать набор элементов управления по умолчанию, включая OpenLayers.Control.Navigation(), OpenLayers.Control.PanZoom(), OpenLayers.Control.ArgParser() и OpenLayers.Control.Attribution().

Чтобы удалить PanZoom или любой другой элемент управления по умолчанию, просто установите массив свойств controls во время создания объекта Map. Вот пример кода:

var map = new OpenLayers.Map('map', {
    controls: [
        new OpenLayers.Control.Navigation(),
        new OpenLayers.Control.ArgParser(),
        new OpenLayers.Control.Attribution()
    ]
});

Вот живой пример.

Обратите внимание, что при установке свойства controls вы не получите ни одного объекта Control по умолчанию. Все необходимые вам элементы управления должны быть добавлены вручную.

Вот ссылка на исходный код объекта Map, если вы хотите посмотреть, как это работает.

20
ответ дан 3 December 2019 в 04:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: