我正在使用 Google Maps Javascript API v3 做一个项目,我看到控制台的一些非常令人费解的输出。
我像这样初始化地图:
function initialize() {
var map = new google.maps.Map(document.getElementById("map-canvas"), {
center: new google.maps.LatLng(41.790113, -87.600732),
zoom: 18,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
然后,稍后(但仍在 内initialize
),我有:
function addTimestampToLatLng(event) {
if (google.maps.geometry.poly.isLocationOnEdge(event.latLng, userPolyline, 0.000001)) {
var marker = new google.maps.Marker({
position: event.latLng,
title: '#' + userPolyline.getPath().getLength(),
map: map,
draggable: true
});
console.log(event.latLng);
console.log(userPolyline.getPath());
console.log(twoClosestPointsOnPolyline(event.latLng, userPolyline));
}
}
由事件侦听器调用:
google.maps.event.addListener(map, 'click', addTimestampToLatLng);
奇怪的是,打印到控制台的每个坐标都是相同的坐标 - lb: 41.79021883761604, mb: -87.60098531842232 - 地图的中心。奇怪的是,除了我尝试打印到控制台时,代码在各个方面都能完美运行。
有任何想法吗?