如何移动谷歌地图的中心位置
How to move the center position of google map
我正在用以下代码创建一个脚本中的谷歌地图-
var mapElement,
parent,
mapOptions,
map,
marker,
latLong,
openMarker;
parent = document.getElementsByClassName('parent')[0];
mapElement = document.createElement('div');
latLong = new google.maps.LatLng(some_lat_from_db, some_long_from_db);
mapOptions = {
center: latLong,
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(mapElement, mapOptions);
marker = new google.maps.Marker({
position: latLong,
map: map,
title: 'some title'
});
openMarker = function () {
var infowindow = new google.maps.InfoWindow();
infowindow.setContent('Some Content');
infowindow.open(map, marker);
};
google.maps.event.addListener(marker, 'click', openMarker);
parent.appendChild(mapElement);
openMarker();
当使用这段代码时,默认情况下打开的信息窗口在地图视图口之外,所以它是不可见的。我首先尝试缩小信息窗口的大小,但没有成功。所以我想移动地图的中心一点,这样信息窗口仍然在视窗。
那么,我如何移动一些像素的中心,使信息窗口保持在视口中?
您可以使用.setCenter()
来移动地图的中心
map.setCenter(marker.getPosition());
使用。fromlatlgtodivpixel()转换LatLng
为Point
添加偏移量,并使用。fromdivpixeltolatlng()将其转换回LatLng
忘记所有的废话这是什么工作,如果你想重用谷歌地图标记或移动谷歌地图标记,或重新居中谷歌地图标记。
var lo = <yourval>;
var la = <yourval>;
var midpoint = {lat:la, lng:lo };
marker.setPosition(midpoint);
如果你想销毁一个谷歌地图标记或删除一个谷歌地图标记
marker.setMap(null);
相关文章:
- 谷歌地图固定位置覆盖
- 在谷歌地图上绘制位置数据库
- 使用ASP.NET将谷歌地图添加到项目中,并从数据库中检索位置
- PHP谷歌地图-位置红色气球没有显示
- 谷歌地图laravel上圆圈的错误位置
- 点击href在谷歌地图中加载位置
- 使用谷歌地图API和phonegap显示当前位置+方向
- 谷歌地图API标记没有标记我的位置
- 在TWebBrowser(谷歌地图)中显示位置,而无需单击按钮
- 如何使用谷歌地图中的纬度和经度搜索附近的位置
- 在谷歌地图上显示所有搜索到的位置结果
- markrimage在谷歌地图api v3中的特定位置后消失
- 谷歌地图Javascript API位置库
- 如何在谷歌地图上为单个位置添加多个标记
- 地理位置谷歌地图jquery
- 显示提醒MSG分享你的位置谷歌地图
- 没有找到当前位置-谷歌地图API
- 添加默认位置谷歌地图
- 如何将多个标记添加到移动位置谷歌地图,Javascript
- 获取一个点附近的政治位置 - 谷歌地图API V3