Подтвердить что ты не робот

Перемещение полосы масштабирования вправо с помощью API Карт Google v3

Я хочу переместить элементы управления увеличением в API Javascript Google Maps слева направо. Если мы оставим настройку по умолчанию, мы получим следующее: default google api

Если я переместил его так:

panControl: true,
  panControlOptions: {
  position: google.maps.ControlPosition.TOP_RIGHT
},
zoomControl: true,
zoomControlOptions: {
  style: google.maps.ZoomControlStyle.LARGE,
  position: google.maps.ControlPosition.RIGHT_TOP
}

Тогда получим:

right api

Я также заметил, что если вы установите его влево (не по умолчанию), вы получите:

left

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

4b9b3361

Ответ 1

Да, вы можете это сделать. Вы должны поместить оба panControl и zoomControl в одну позицию - либо google.maps.ControlPosition.TOP_RIGHT, либо google.maps.ControlPosition.RIGHT_TOP.

Используйте либо:

panControl: true,
panControlOptions: {
  position: google.maps.ControlPosition.TOP_RIGHT
},
zoomControl: true,
zoomControlOptions: {
  style: google.maps.ZoomControlStyle.LARGE,
  position: google.maps.ControlPosition.TOP_RIGHT
}

или

panControl: true,
  panControlOptions: {
  position: google.maps.ControlPosition.RIGHT_TOP
},
zoomControl: true,
zoomControlOptions: {
  style: google.maps.ZoomControlStyle.LARGE,
  position: google.maps.ControlPosition.RIGHT_TOP
}

Простое объяснение состоит в том, что карты Google имеют контейнер в каждой позиции управления. Каждый из этих контейнеров позиционируется и масштабируется таким образом, что все необходимые элементы управления вписываются. Затем управление центрируется, если имеется некоторое оставшееся пространство (в этом случае ширина контейнера определяется шириной panControl). Если вы поместите элементы управления в отдельные позиции, они помещаются в отдельные контейнеры, которые масштабируются и расположены соответствующим образом.