0
안녕하세요.지도에 팝업이 있는데 높이가 10 픽셀, 가로로 15 픽셀 만 이동하고 싶습니다. 문제는 위도와 경도에서 위치를 바꿀 때 완전히 다른 위치에있을 때입니다. 나는 마커에서 멀리 줌, 내가 원하는 것은 줌에 관계없이 새로운 위치로 이동하는 것입니다. 항상 마커 위로 유지됩니다.OpenLayers.Popup을 최대 10 픽셀 이동하고 15 픽셀 왼쪽으로 이동합니까?
var size = new OpenLayers.Size(21,25);
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
var icon = new OpenLayers.Icon('/openlayers/img/marker.png',size,offset);
var lonlat = new OpenLayers.LonLat(long,lat);
var proj_1 = new OpenLayers.Projection("EPSG:4326");
var proj_2 = new OpenLayers.Projection("EPSG:900913");
var EPSG = lonlat.transform(proj_1,proj_2);
var marker = new OpenLayers.Marker(EPSG, icon);
markers.addMarker(marker);
marker.events.register("click", marker, function(e){ // on click popup
var popup = new OpenLayers.Popup.FramedCloud(id,
marker.lonlat,
new OpenLayers.Size(200,200),
'<div class="popup">info example</div>',
null,true);
map.addPopup(popup);
});
var labelepopup = new OpenLayers.Popup(null,
EPSG,
new OpenLayers.Size(37,13),
'<p style="font-size: 8.5px;">always info</p>'
);
map.addPopup(labelepopup);
표시 labelepopup로 마커에 팝업, 내가 원하는 모든 마커 위의 labelepopup을 수용하는 것입니다.