z-индексное наложение в Google отображает версию 3

Я пытаюсь заставить наложение в api v3 карт Google появляться, прежде всего, маркеры. Но кажется, что API Google всегда помещал мое наложение с самым низким z-индексным приоритетом. Только решение, которое я нашел, состоит в том, чтобы выполнить итерации через дерево DOM и вручную установить z-индекс на более высокое значение. Плохое решение.

Я добавляю мой новое отделение к моему наложению с:

 onclick : function (e) {
     var index = $(e.target).index(),
         lngLatXYposition = $.view.overlay.getProjection().fromLatLngToDivPixel(this.getPosition());
         icon = this.getIcon(),
         x = lngLatXYposition.x - icon.anchor.x,
         y = lngLatXYposition.y - icon.anchor.y

     $('<div>test</div>').css({ left: x, position: 'absolute', top: y + 'px', zIndex: 1000 }).appendTo('.overlay');
}

Я попробовал каждое свойство, о котором я мог думать при создании моего наложения. zIndex, zPriority и т.д.

Я добавляю свое наложение с:

$.view.overlay = new GmapOverlay( { map: view.map.gmap });

И GmapOverlay наследовался новому google.maps. OverlayView.

Какие-либо идеи?

.. fredrik

22
задан fredrik 21 April 2010 в 12:00
поделиться

2 ответа

Вы не можете изменить zIndex OverlayView (у него нет такого свойства), но он содержит панели, содержащие узлы DOM. Здесь вы можете использовать свойство z-index:

...
lngLatXYposition = $.view.overlay.getPanes().overlayLayer.style['zIndex'] = 1001;
...
28
ответ дан 29 November 2019 в 03:53
поделиться

Установка z-index на 104 для слоя overLay кажется "волшебным" числом ", если вы заботитесь о взаимодействии с маркерами (т. Е. Перетаскивании маркеров). Любое значение выше 104, и вы можете не взаимодействовать с маркерами. Интересно, есть ли менее хрупкое решение ...

0
ответ дан 29 November 2019 в 03:53
поделиться
Другие вопросы по тегам:

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