我是新手,在编码时会选一个新手(我只知道html,css和js)
我必须事先道歉,因为我不擅长正确格式化。
我一直试图弄清楚google maps api的工作原理,这是学习javascript之后我要学习的第一件事。
我的问题是,当我在地图上放置标记时,会弹出一个很小的信息框,但标记所处的位置却没有任何信息。它只是显示一个在标记上方带有x的小盒子。我也有一个错误:
js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries = places,drawing,geometry&callback = initMap:79 InvalidValueError:setPosition:不是LatLng或LatLngLiteral:在属性lat中:不是数字
_。Oc @ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries =位置,绘图,geometry&callback = initMap:79
_。Rc @ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries =位置,绘图,geometry&callback = initMap:79
(匿名)@ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries =位置,绘图,geometry&callback = initMap:92
_。S.setValues @ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries = places,drawing,geometry&callback = initMap:196
pf @ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries = places,drawing,geometry&callback = initMap:108
_。qf @ js?key = AIzaSyBv33V50K4maF6RQ-hSRAV6ULoto5p4Iog&libraries =位置,绘图,geometry&callback = initMap:108
addMarker @ cool.html:156
(匿名)@ cool.html:129
(匿名)@ places_impl.js:20
(匿名)@ places_impl.js:19
e @ places_impl.js:4
c @ common.js:67
(匿名)@ PlaceService.FindPlaceFromText?1s澳大利亚当代艺术博物馆&2e2&3m0&5m2&3m1&1sname%2Cgeometry&6m2&1sen-US&2e1&callback = xdc ._ u5xqct&key = AIzaSyBv33V5Q4 = 6_a5R1R1E4R8E6R1E4R6A6B6D0E6B6E6B0E6&O6&O = 4a&8S
我回到错误的行,尝试放置位置而不是位置,这部分起作用。它使我的小信息框弹出,并允许我在各处放置标记,但信息仍然丢失。
我也去了说Lat Lng错的地方,但是我不太明白我在做什么错。
我不是很擅长调试,但是一直学习。我的大多数错误都已解决,现在我有了这个错误。
function initMap() {
var sydney = new google.maps.LatLng(-33.867, 151.195);
infowindow = new google.maps.InfoWindow();
map = new google.maps.Map(document.getElementById('map'), {
zoom: 7,
center: sydney,
mapTypeId: 'roadmap'
});
//following is for infowindow
var request = {
query: 'Museum of Contemporary Art Australia',
fields: ['name', 'geometry'],
};
service = new google.maps.places.PlacesService(map);
service.findPlaceFromQuery(request, function(results, status) {
if (status === google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
addMarker(results[i]);
}
map.setCenter(results[0].geometry.location.place);
}
});
//end of info window
//FOLLOWING ADDS MARKERS
// This event listener will call addMarker() when the map is clicked.
map.addListener('click', function(event) {
addMarker(event.latLng);
});
// Adds a marker at the center of the map.
addMarker(sydney);
} //end of first function
// Adds a marker to the map and push to the array.
function addMarker(place) {
var marker = new google.maps.Marker({
position: place,
map: map
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name);
infowindow.open(map, this);
});
markers.push(marker);
}
我期望的是在我放下一个标记并单击它之后,在该标记上方弹出一个信息框,告知其位置并显示地址。
实际上发生的是,该框会弹出很小,根本没有任何信息,并且出现日志错误。