Openlayers zIndex для маркеров и векторов - PullRequest
7 голосов
/ 28 октября 2011

Я рендерил карту с OSM, и у меня возникла серьезная проблема с установкой zIndex для элементов страницы.

Часть JS выглядит так:

var userRoute = new OpenLayers.Layer.Vector( "KML", {
    sphericalMercator : true,
    styleMap: styleMap,
    rendererOptions: { zIndexing: true }
} );

var markers = new OpenLayers.Layer.Markers( "Markers", {
    sphericalMercator : true,
    rendererOptions: { zIndexing: true }
} );

markers.setZIndex( 500 );
userRoute.setZIndex( 200 );

Теперь при разборе файла KMLдля первого элемента я установил

var startFlag = new OpenLayers.Icon( '/start_flag_2.png', new OpenLayers.Size( 23, 22 ) );
markers.addMarker( new OpenLayers.Marker( latlon, startFlag ) )

То же самое касается последнего элемента.:

var stopFlag = new OpenLayers.Icon( '/stop_flag_2.png', new OpenLayers.Size( 23, 22 ) );
markers.addMarker( new OpenLayers.Marker( latlon, stopFlag ) )

Настройка zIndex просто игнорируется скриптом, есть идеи, почему?

1 Ответ

19 голосов
/ 31 октября 2011

Если кому-то интересно, вам нужно указать zIndex ПОСЛЕ добавления слоев на карту

map.addLayers( [userRoute, markers] ); 
markers.setZIndex( 1001 ); 
userRoute.setZIndex( 1000 ); 

и все работает просто отлично:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...