Javascript 谷歌地图api无法读取placesservice
我对谷歌的地图API和PlacesService有问题。尽管我已经正确加载了places库,但它一直在说“无法读取未定义的属性'PlacesService'。地图本身工作并加载。有什么想法吗?代码如下:Javascript 谷歌地图api无法读取placesservice,javascript,google-maps,google-maps-api-3,google-places-api,Javascript,Google Maps,Google Maps Api 3,Google Places Api,我对谷歌的地图API和PlacesService有问题。尽管我已经正确加载了places库,但它一直在说“无法读取未定义的属性'PlacesService'。地图本身工作并加载。有什么想法吗?代码如下: <div id="map-canvas"></div> <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3&libraries=places"&g
<div id="map-canvas"></div>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3&libraries=places"></script>
<script type="text/javascript">
var myLatlng;
var map;
var marker;
function initialize() {
myLatlng = new google.maps.LatLng(fooLat, fooLng);
var mapOptions = {
zoom: 17,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
scrollwheel: false,
draggable: true
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var service = new google.maps.places.PlacesService(map);
var request = { placeId: 'fooPlaceId'};
service.getDetails(request, callback);
function callback (place, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
marker = new google.maps.Marker({
position: place.position,
map: map,
title: place.name
});
}
};
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
var Mylatng;
var映射;
var标记;
函数初始化(){
myLatlng=新的google.maps.LatLng(傻瓜,傻瓜);
变量映射选项={
缩放:17,
中心:myLatlng,
mapTypeId:google.maps.mapTypeId.ROADMAP,
滚轮:错误,
德拉格布尔:是的
};
map=new google.maps.map(document.getElementById('map-canvas'),mapOptions);
var service=newgoogle.maps.places.PlacesService(地图);
var请求={placeId:'foodplaceid'};
获取详细信息(请求、回调);
函数回调(位置、状态){
if(status==google.maps.places.PlacesServiceStatus.OK){
marker=新的google.maps.marker({
位置:place.position,
地图:地图,
标题:place.name
});
}
};
}
google.maps.event.addDomListener(窗口“加载”,初始化);
更新:
我实际上只是尝试了一段代码,它给了我同样的错误。答案是:我直接从某个页面复制了include行(这里是stackoverflow,或者是Google API的一个示例页面。问题似乎在于,无论出于何种原因,它的库名中有一个不可见的字符,而我的CMS编辑器没有注意到。所以复制时要小心!此示例需要Places库。包括
libraries=Places
参数w当您第一次加载带有API密钥的API时
例如:
如果您有答案,请将其作为答案发布,而不是编辑问题。注意:如果您需要启用多个库,请使用逗号将它们分隔开-例如&libraries=geometry,places
不确定为什么会被否决-如果复制OP的“libraries”querystring参数,您将得到三个Invisible在“位置”的“e”和“s”之间有e个字符:十六进制的E2、80和8C。我没想到!