Openlayers并不是弹出窗口中的可见标记

时间:2012-12-21 18:40:48

标签: map popup openlayers marker

我的OpenLayers地图有一个问题。当我在地图上单击标记时,它将显示弹出窗口,但在此弹出窗口上方仍可看到其他标记。

这是怎么做到的?

    fromProjection = new OpenLayers.Projection("EPSG:4326"); 
    toProjection   = new OpenLayers.Projection("EPSG:900913"); 

    markers = new OpenLayers.Layer.Markers( "Markers" );

    markers.events.register('mouseover', markers, function(evt) {
        popup = new OpenLayers.Popup.FramedCloud("Popup",
                new OpenLayers.LonLat(Tlon,Tlat).transform( fromProjection, toProjection),
            null,
            '<span style="z-index:99999;background:red;">sdf</span>',
            null,
            false);
        map.addPopup(popup);
    });

    markers.events.register('mouseout', markers, function(evt) {popup.hide();});

    map.addLayer(markers);
    markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(Tlon,Tlat).transform( fromProjection, toProjection),icon));

1 个答案:

答案 0 :(得分:1)

如果没有要测试的网址,我无法确定,但您可能需要为添加到地图的每个标记克隆图标。来自文档:

  

请注意,如果您将图标传递给Marker构造函数,它会   拿那个图标并使用它。这意味着您不应该共享图标   标记之间 - 你使用它们一次,但你应克隆()任何   使用相同图标的其他标记。