谷歌地图API-信息窗口显示谷歌位置API信息
Google Map API - Infowindow display google place API information
我不知道该怎么做。
我想要什么:我想显示您在访问时可能找到的信息https://www.google.com/maps寻找农贸市场。
我想要一个信息窗口,提供地址,运营时间,可能还有谷歌地图为这项业务提供的其他信息。
我现在拥有的:我有一个Angular JS代码块,它填充了一个数组,如下所示:
var locations = [
['Findlay Market', 39.115398, -84.518481, 5],
['Hyde Park Farmers' Market', 39.139601, -84.442496, 4],
['Lettuce Eat Well Farmers' Market', 39.166134, -84.611613, 3],
['College Hill Farm Market', 39.195641, -84.545453, 2],
['Anderson Farmers' Market', 39.078364, -84.350539, 1]
];
然后我使用信息窗口来显示农贸市场的名称。
我知道我可以在数据库中添加一个新的表,持续数小时,并添加其他信息,然后用它创建一个Angular JS卡,我可以在信息窗口中显示。。。但我希望有一种方法可以使用谷歌地图API和谷歌地点API来获取信息,而不是将其存储在我的数据库中。
多亏了uksz,我能够使用下面的代码来帮助我获得所需的信息。
<!DOCTYPE html>
<html>
<head>
<title>Place details</title>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<style>
html, body, #map-canvas {
height: 100%;
margin: 0px;
padding: 0px
}
</style>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true&libraries=places"></script>
<script>
function initialize() {
var map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(39.115398, -84.518481),
zoom: 15
});
var request = {
location: map.getCenter(),
radius: '500',
query: 'Findlay Market'
};
var service = new google.maps.places.PlacesService(map);
service.textSearch(request, callback);
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
var marker = new google.maps.Marker({
map: map,
place: {
placeId: results[1].place_id,
location: results[1].geometry.location
}
});
var infowindow = new google.maps.InfoWindow();
google.maps.event.addListener(marker, 'click', function() {
var content = results[1].name + '<br>' +
results[1].formatted_address + '<br>' +
results[1].opening_hours + '<br>' +
results[1].place_id + '<br>';
infowindow.setContent(content);
infowindow.open(map, this);
});
}
}
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="map-canvas"></div>
</body>
</html>
所以我不知道我是否正确理解了你的问题,但如果你只想显示来自Google Places API的信息,你可以使用他们的getDetails()函数。这将返回一个对象。如果你不想存储对象,为什么不在每次用户切换视图后删除对象呢?这样,您就不会将这些信息存储在数据库中,至少不会永久存储。
祝你好运!
以下是他们完整的getDetails()手册:
https://developers.google.com/maps/documentation/javascript/places#place_details_requests
相关文章:
- 将谷歌自动完成地址信息放在页面上,而不是表格中
- 谷歌地图点击潜水触发信息窗口
- 将FlowPlayer嵌入谷歌地图信息窗口
- 当我浏览回页面时,谷歌地图信息窗口不会弹出
- 谷歌地图信息窗口Z索引
- 谷歌地图-数据库中的标记只显示最后一行的信息
- 谷歌地图信息窗口为每个标记显示相同的内容
- 为位于路线上的谷歌地图标记(起点和终点)设置一个信息窗口
- 信息窗口谷歌地图点击事件给出错误
- Javascript谷歌地图每个信息窗口
- 更新打开的谷歌地图信息窗口
- 谷歌地图/SQL-添加链接到信息面板中的字段
- 在谷歌地图的信息窗口内点击按钮
- 谷歌地图API-信息窗口显示谷歌位置API信息
- 谷歌地图API-获取信息窗口打开时,点击一个圆圈
- 谷歌地图 API - 指向地点详细信息页面的链接
- 为标记添加唯一的信息窗口,并更新数据库以存储信息(谷歌地图api)
- 是否有可能显示博客查看计数器与信息谷歌分析
- 谷歌地图v3,错误信息“谷歌是未定义的”
- 访问大学建筑信息谷歌地图api