我正在实施一个应用程序,我必须在地图中心显示带有圆圈的谷歌地图。我可以在地图上画一个圆圈,但几秒钟后我必须更新圆的半径。我想使用相同的地图实例,而不是创建新的地图实例。 当我创建新的圈子在旧圈子上重叠。我想删除以前添加的圈子并显示新圈子。 在检查api的时候,我从Circle类中得到了这个方法,它会隐藏这个圆。 myCity.setOptions({visible:false});刷新谷歌地图上的圆圈
但问题是我没有访问较旧的圆形实例。 有没有什么方法可以让我获得分配给该地图的地图标记和信息框,并将其删除? 下面是方法,该方法将被调用的几秒钟的时间间隔
function mapByCoordinates()
{
var lat=document.getElementById("latValue").value;
var lng=document.getElementById("lngValue").value;
var accuracy = document.getElementById("zoomValue").value;
var zoomVal=getZoomBasedOnAccuracy(accuracy);
var zm = parseInt(zoomVal);
var tempRadius = getRadiusBasedOnAccuracy(accuracy);
var amstr = new google.maps.LatLng(lat,lng);
var mapProp = {
center:amstr,
zoom:zm,
mapTypeId:google.maps.MapTypeId.HYBRID
};
map.setOptions(mapProp);
myCity.setOptions({visible:false});
infobox.close();
myCity = new google.maps.Circle({
center:amstr,
radius:tempRadius
});
marker=new google.maps.Marker({
position:amstr,
});
myCity.setMap(map);
myCity1.setMap(map1);
infobox = new google.maps.InfoWindow({
content:"Welcome to google map",
disableAutoPan:true
});
infobox.open(map,marker);
map.panTo(amstr);
map.setZoom(19);
}
感谢
将有助于我们看到到目前为止 – duncan
方法添加你已经尝试什么样的代码,做了它的一些变化。每次我在创建实例的同时,我都不想让var公开。有没有什么办法可以访问圈子信息infobox被暗杀到地图 – swapnil
看起来你发布的代码每次运行时都会重新创建地图。如果你不希望发生这种情况,你应该做的第一件事是从定期执行的例程中移除该代码。发布的代码有什么问题? – geocodezip