Google Maps: Как я могу изменить z-индекс Маркера?

Существует приблизительно 100 маркеров на карте Google плюс существует один специальный маркер, который должен быть видим. В настоящее время маркеры вокруг этого скрывают его полностью или частично когда карта уменьшена. Мне нужен тот маркер, чтобы быть полностью видимым, и я думаю, сохраняя его сверху всех других маркеров, должен добиться цели. Но я не могу найти способ изменить его порядок укладки (z-индекс).

18
задан jhanifen 2 August 2013 в 17:43
поделиться

1 ответ

Используйте параметр zIndexProcess в GMarkerOptions при создании маркера, который вы хотите расположить сверху. Например:

var pt = new GLatLng(42.2659, -83.74861);
var marker = new GMarker(pt, {zIndexProcess: function() { return 9999; }});
map.addOverlay(marker);

Я считаю, что по умолчанию используется z-index, который является широтой точки маркера, так что это должно быть довольно безопасно при перемещении одного маркера вперед. Кроме того, это был простой пример; вы можете установить z-index всех ваших маркеров любым простым или сложным способом. Другой пример - иметь две функции: одну для специальных маркеров, а другую - для остальных.

var pt1 = new GLatLng(42.2659, -83.74861);
var pt2 = new GLatLng(42.3000, -83.74000);
var marker1 = new GMarker(pt1, {zIndexProcess: specialMarker});
var marker2 = new GMarker(pt2, {zIndexProcess: normalMarker});
map.addOverlay(marker1);
map.addOverlay(marker2);

function specialMarker() {
  return 9999;
}

function normalMarker() {
  return Math.floor(Math.random()*1000);
}
5
ответ дан 30 November 2019 в 07:38
поделиться
Другие вопросы по тегам:

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