我有以下代码。在关于“点击”事件的部分中,我希望获得点击点的信息,但到目前为止我还是无法做到。我该怎么办?
问题:我需要setCenter
地图到新点击的区域。
<div id='map-container' style="width: 500px; height: 500px;">
</div>
<script type="text/javascript">
var map;
function initialize() {
var mapOptions = {
zoom: 8,
center: new google.maps.LatLng(35.7, 51.3999)
};
map = new google.maps.Map(document.getElementById('map-container'),
mapOptions);
var marker = new google.maps.Marker({
position: map.getCenter(),
map: map,
title: 'موقعیت خود را انتخاب کنید'
});
google.maps.event.addListener(document.getElementById('map-container'), 'click', function() {
map.setZoom(10);
map.setCenter(35.7, 51.3999);
console.log(marker.getPosition());
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
答案 0 :(得分:1)
(1)要获取在Google地图中点击的点的纬度/经度,您必须使用 click
eventListener
谷歌地图>
google.maps.event.addListener(map, 'click', function(event) {
});
(2)然后获取正在点击的地图的位置
event.latLng //returns the position
event.latLng.ob //returns lat
event.latLng.pb //returns lng
(3)现在使用 setCenter(pos)
,将点击的区域标记为地图的中心,如
map.setCenter(event.latLng);
最后,
google.maps.event.addListener(map, 'click', function(event) {
map.setCenter(event.latLng);
});
编辑: 您能告诉我如何同时将红色标记移动到新点击的区域吗?
google.maps.event.addListener(map, 'click', function (event) {
marker.setPosition(event.latLng); //set the position to marker
map.setCenter(marker.getPosition()); //Now set marker to map's center
});