Googleマーカーを使用して緯度と経度の値を取得し、オープンレイヤーマーカーを使用してGoogleプレイスマーカーを表示していますここにコードの一部があります
function googleMarker(name, lat, lng, address, types, iconImage)
{
var nameLength = name.length;
nameLength = nameLength+120;
var lonLat = new OpenLayers.LonLat( lng ,lat ).transform(new OpenLayers.Projection("EPSG:4326"),map.getProjectionObject());
trackMarkers = new OpenLayers.Layer.Markers("Markers");
var size = new OpenLayers.Size(20, 20);
var offset = new OpenLayers.Pixel(-(size.w / 2), -(size.h / 2));
var icon = new OpenLayers.Icon(iconImage, size, offset);
map.addLayer(trackMarkers);
trackMarker = new OpenLayers.Marker(lonLat, icon);
trackMarkers.addMarker(trackMarker);
trackMarker.events.register('click', trackMarker, function(evt)
{
popup = new OpenLayers.Popup.FramedCloud("featurePopup",lonLat, null,'<div style="color:#FF0000;">'+name+","+address + '</div>', null, null);
map.addPopup(popup);
});
}
これが解析され、開いているレイヤーに投影されたものです。私が直面している問題は、次のマーカーを選択してマップをクリックする前に、以前に有効にしたポップアップを削除する方法です。